Deprecated: Assigning the return value of new by reference is deprecated in /home/pwsconsu/public_html/blog/inc/_main.inc.php on line 123

Strict Standards: Declaration of UserSettings::get() should be compatible with AbstractSettings::get($col_key1, $col_key2 = NULL, $col_key3 = NULL) in /home/pwsconsu/public_html/blog/inc/MODEL/users/_usersettings.class.php on line 202

Strict Standards: Declaration of UserSettings::set() should be compatible with AbstractSettings::set() in /home/pwsconsu/public_html/blog/inc/MODEL/users/_usersettings.class.php on line 202

Warning: Creating default object from empty value in /home/pwsconsu/public_html/blog/inc/MODEL/settings/_abstractsettings.class.php on line 221

Deprecated: Assigning the return value of new by reference is deprecated in /home/pwsconsu/public_html/blog/inc/MODEL/generic/_genericelement.class.php on line 112

Strict Standards: Declaration of Blog::set() should be compatible with DataObject::set($parname, $parvalue, $make_null = false) in /home/pwsconsu/public_html/blog/inc/MODEL/collections/_blog.class.php on line 1034

Strict Standards: Declaration of BlogCache::option_list() should be compatible with DataObjectCache::option_list($default = 0, $allow_none = false, $method = 'name') in /home/pwsconsu/public_html/blog/inc/MODEL/collections/_blogcache.class.php on line 272

Deprecated: Assigning the return value of new by reference is deprecated in /home/pwsconsu/public_html/blog/inc/MODEL/collections/_category.funcs.php on line 390

Strict Standards: Declaration of Group::set() should be compatible with DataObject::set($parname, $parvalue, $make_null = false) in /home/pwsconsu/public_html/blog/inc/MODEL/users/_group.class.php on line 420

Strict Standards: Declaration of User::dbdelete() should be compatible with DataObject::dbdelete() in /home/pwsconsu/public_html/blog/inc/MODEL/users/_user.class.php on line 1145

Strict Standards: Declaration of User::set() should be compatible with DataObject::set($parname, $parvalue, $make_null = false) in /home/pwsconsu/public_html/blog/inc/MODEL/users/_user.class.php on line 1145

Deprecated: Assigning the return value of new by reference is deprecated in /home/pwsconsu/public_html/blog/inc/_misc/_resultsel.class.php on line 549

Strict Standards: Declaration of ResultSel::display_list_start() should be compatible with Results::display_list_start($detect_no_results = true) in /home/pwsconsu/public_html/blog/inc/_misc/_resultsel.class.php on line 48

Strict Standards: Declaration of ResultSel::display_list_end() should be compatible with Results::display_list_end($detect_no_results = true) in /home/pwsconsu/public_html/blog/inc/_misc/_resultsel.class.php on line 48

Strict Standards: Declaration of Filetype::set() should be compatible with DataObject::set($parname, $parvalue, $make_null = false) in /home/pwsconsu/public_html/blog/inc/MODEL/files/_filetype.class.php on line 197

Strict Standards: Declaration of UserCache::option_list() should be compatible with DataObjectCache::option_list($default = 0, $allow_none = false, $method = 'name') in /home/pwsconsu/public_html/blog/inc/MODEL/users/_usercache.class.php on line 288

Strict Standards: Declaration of Comment::set() should be compatible with DataObject::set($parname, $parvalue, $make_null = false) in /home/pwsconsu/public_html/blog/inc/MODEL/comments/_comment.class.php on line 1164

Deprecated: Assigning the return value of new by reference is deprecated in /home/pwsconsu/public_html/blog/inc/MODEL/items/_itemlist.class.php on line 602

Notice: Array to string conversion in /home/pwsconsu/public_html/blog/inc/_misc/_misc.funcs.php on line 1253

Deprecated: Assigning the return value of new by reference is deprecated in /home/pwsconsu/public_html/blog/inc/_blog_main.inc.php on line 306

Strict Standards: Declaration of ItemList2::query() should be compatible with Results::query($create_default_cols_if_needed = true, $append_limit = true, $append_order_by = true) in /home/pwsconsu/public_html/blog/inc/MODEL/items/_itemlist2.class.php on line 48

Notice: Array to string conversion in /home/pwsconsu/public_html/blog/inc/_misc/_misc.funcs.php on line 1253

Deprecated: Function ereg() is deprecated in /home/pwsconsu/public_html/blog/inc/_blog_main.inc.php on line 413

Warning: Cannot modify header information - headers already sent by (output started at /home/pwsconsu/public_html/blog/inc/MODEL/items/_itemlist.class.php:602) in /home/pwsconsu/public_html/blog/inc/MODEL/skins/_skin.funcs.php on line 71
The South East Asia SOA Weblog http://blog.pwsindonesia.com/index.php South East Asia SOA Weblog en-US hourly 1 2000-01-01T12:00+00:00 easyinsureboker the one car http://blog.pwsindonesia.com/index.php/2016/02/18/easyinsureboker_the_one_car 2016-02-18T07:19:04Z moonewzii1 SOA Solutions in South East Asia Cheap car insurance is suitable for everyone. Free 24 hour online order buy clicking No need to get busy, easyinsure. Thank you bro https://www.easyinsure.co.th/ Cheap car insurance is suitable for everyone. Free 24 hour online order buy clicking
No need to get busy, easyinsure.
Thank you bro

https://www.easyinsure.co.th/

]]>
EnterpriseDB PostgreSQL Administration 26th July 2011 http://blog.pwsindonesia.com/index.php/2011/07/01/enterprisedb_postgresql_administration_2_2011 2011-07-01T09:25:16Z david SOA Solutions in South East Asia Just a quick note… PWS are conducting PostgreSQL Administration training (official training) on 26th-28th July 2011. The course includes hands-on and is a preparation for the PostgreSQL Associate Certification exam (includes voucher etc.). The details and registration landing pad can be found here: PostgreSQL Administration Just a quick note… PWS are conducting PostgreSQL Administration training (official training) on 26th-28th July 2011. The course includes hands-on and is a preparation for the PostgreSQL Associate Certification exam (includes voucher etc.). The details and registration landing pad can be found here: PostgreSQL Administration

]]>
Oracle Dumps Itanium http://blog.pwsindonesia.com/index.php/2011/06/08/oracle_dumps_itanium 2011-06-08T10:06:46Z david SOA Vendors in South East Asia To quote a line from a famous film … “I love the smell of napalm in the morning” (Apocalypse Now). To me those pearl handled pistols characterize Larry’s attitude toward all things great and small. We are kind of lucky that he doesn’t own any really critical infrastructure (like water or sewage). There is hardly a business partner in the world that remains unscathed by Oracle’s all or nothing attitude. So where does that leave our dear old friends Hewlett Packard? (… I can just imagine Bill and Dave turning in their graves RIP). I am not a big fan or Itanium personally and I never have been but interestingly Intel as well as HP have never backed away from it and if we all remember, HP made a huge commitment to that platform when they announced that Itanium will replace their PA RISC architecture servers a few years back. Fact is that Intel remains committed to Itanium beside HP along with Huawei and Inspur announcing that they will also start producing Itanium based servers. So therein lies the pivotal question… why would Larry want to leave this party? If I had to meet HP to discuss this (unapologetically) on Oracle’s behalf then I could put it to HP that Itanium remains a smallish server platform by sales volume and that the Unix server market is kind of flagging and being slowly replaced by Lintel (Linux x86). This is a phenomenon that is in part to do with the fact that the relative power of x86 based systems has increased substantially with 64bit systems emerging at an unbeatable price point. Still feeling unapologetic… In actual fact for the database world the current market situation for Unix servers is partially to do with Oracle themselves and their continuous evangelic marketing around Linux x86… (then they go and buy a Unix vendor! … work that one out). I remember working with Oracle a few years back when they ramped up the Linux x86 marketing engine. Back then I was heading up pre-sales for Oracle in South Asia. During the 9i and 10g campaigns you could hardly hear anything but Unbreakable Linux being shouted from the podium. I also shouted it quite a few times myself on their behalf. The years pass… and after a long hard endless winter in the business world you would have to be blind, dumb or both not to realize that a lot of your hard earned cash is being wasted on IT systems with a good portion of it now landing in Larry’s bank account. Many companies and people have awaken and started down the path of financial and functional enlightenment toward open source adoption. Obviously this trend is yet to completely change the landscape of IT vendor revenue but the vendors are definitely preparing for an inevitable tsunami. That is what cloud computing is designed to help them with (anyway… drifting a little off topic). After spending 7.4 billion on Sun Microsystems (probably not just a favor to bail out Scott) I guess Larry may have suddenly realized that monetizing Java may not really be quite that easy after all (other than suing Google over Android… which gets some of his cash back). I get the distinct feeling that Larry thinks he needs to shift a bit of industry momentum back to Sun servers and try to polarize the database end of the whole server market with IBM (as well as taking HP down a few notches). Now that does sound more than just a little anti-competitive… I can just imagine every sales deal that they walk up to now starting to sound more like their friends at IBM used to sound (… hardware, software, services… and err… hardware). So in summary… given the current server market situation, whipping the mat out from underneath HP’s feet seems like the logical path for Larry and is also consistent with the way in which our friends from Redwood Shores always like to do business (just ask some other recipients of this treatment… for example Red Hat). Let’s face it sir… if you are not buying HP databases, applications or middleware then why the hell would you want to buy HP servers? It is time to wake up and smell the industry for what it is folks. To quote another not so famous but nonetheless entertaining movie, if you are not taking open source database seriously then… “your situational awareness kind of sucks” (The Perfect Getaway). I believe that it is also high time to take a serious look at open source database and put some distance between your bank account and Larry’s. Of course we are more than just a little biased in this matter but we do believe that EnterpriseDB/Postgres is a natural choice for anyone seeking a DBMS platform on HP servers (or any other server) going forward. There has never been a better time to start. It is also a very good time to start looking at open source middleware (we like Geronimo… so does IBM) too before Larry decides to de-support WebLogic on Itanium too. God save us all if Larry decides to walk away from Java on Itanium (… and other non-Larry hardware). Or at the very least god save HP. To quote a line from a famous film …

“I love the smell of napalm in the morning” (Apocalypse Now).

To me those pearl handled pistols characterize Larry’s attitude toward all things great and small. We are kind of lucky that he doesn’t own any really critical infrastructure (like water or sewage). There is hardly a business partner in the world that remains unscathed by Oracle’s all or nothing attitude. So where does that leave our dear old friends Hewlett Packard? (… I can just imagine Bill and Dave turning in their graves RIP).

I am not a big fan or Itanium personally and I never have been but interestingly Intel as well as HP have never backed away from it and if we all remember, HP made a huge commitment to that platform when they announced that Itanium will replace their PA RISC architecture servers a few years back. Fact is that Intel remains committed to Itanium beside HP along with Huawei and Inspur announcing that they will also start producing Itanium based servers.

So therein lies the pivotal question… why would Larry want to leave this party?

If I had to meet HP to discuss this (unapologetically) on Oracle’s behalf then I could put it to HP that Itanium remains a smallish server platform by sales volume and that the Unix server market is kind of flagging and being slowly replaced by Lintel (Linux x86). This is a phenomenon that is in part to do with the fact that the relative power of x86 based systems has increased substantially with 64bit systems emerging at an unbeatable price point. Still feeling unapologetic…

In actual fact for the database world the current market situation for Unix servers is partially to do with Oracle themselves and their continuous evangelic marketing around Linux x86… (then they go and buy a Unix vendor! … work that one out).

I remember working with Oracle a few years back when they ramped up the Linux x86 marketing engine. Back then I was heading up pre-sales for Oracle in South Asia. During the 9i and 10g campaigns you could hardly hear anything but Unbreakable Linux being shouted from the podium. I also shouted it quite a few times myself on their behalf.

The years pass… and after a long hard endless winter in the business world you would have to be blind, dumb or both not to realize that a lot of your hard earned cash is being wasted on IT systems with a good portion of it now landing in Larry’s bank account. Many companies and people have awaken and started down the path of financial and functional enlightenment toward open source adoption. Obviously this trend is yet to completely change the landscape of IT vendor revenue but the vendors are definitely preparing for an inevitable tsunami. That is what cloud computing is designed to help them with (anyway… drifting a little off topic).

After spending 7.4 billion on Sun Microsystems (probably not just a favor to bail out Scott) I guess Larry may have suddenly realized that monetizing Java may not really be quite that easy after all (other than suing Google over Android… which gets some of his cash back). I get the distinct feeling that Larry thinks he needs to shift a bit of industry momentum back to Sun servers and try to polarize the database end of the whole server market with IBM (as well as taking HP down a few notches). Now that does sound more than just a little anti-competitive… I can just imagine every sales deal that they walk up to now starting to sound more like their friends at IBM used to sound (… hardware, software, services… and err… hardware).

So in summary… given the current server market situation, whipping the mat out from underneath HP’s feet seems like the logical path for Larry and is also consistent with the way in which our friends from Redwood Shores always like to do business (just ask some other recipients of this treatment… for example Red Hat).

Let’s face it sir… if you are not buying HP databases, applications or middleware then why the hell would you want to buy HP servers? It is time to wake up and smell the industry for what it is folks.

To quote another not so famous but nonetheless entertaining movie, if you are not taking open source database seriously then…

“your situational awareness kind of sucks” (The Perfect Getaway).

I believe that it is also high time to take a serious look at open source database and put some distance between your bank account and Larry’s. Of course we are more than just a little biased in this matter but we do believe that EnterpriseDB/Postgres is a natural choice for anyone seeking a DBMS platform on HP servers (or any other server) going forward. There has never been a better time to start. It is also a very good time to start looking at open source middleware (we like Geronimo… so does IBM) too before Larry decides to de-support WebLogic on Itanium too.

God save us all if Larry decides to walk away from Java on Itanium (… and other non-Larry hardware). Or at the very least god save HP.

]]>
How to Call Geronimo 2.2 Local EJB using JNDI http://blog.pwsindonesia.com/index.php/2011/06/07/how_to_call_geronimo_2_2_local_ejb_using 2011-06-07T14:31:30Z david SOA Solutions in South East Asia I had searched high and low for a solution to this. Seems like all the solution examples on Geronimo’s web site were using annotations and everything else I looked at seemed to draw a complete blank. Never being one to give up that easily I decided to hack my way through it. The first trick to be aware of is that like all the other services in Geronimo, the OpenEJB services are installed into the server by means of a resource adapter GBean. This doesn’t matter that much other than that you need to consider this when searching for a solution. So the first thing I did was set up an initial context in my EJB client code (the scenario is Session EJB calls another session EJB using local interface). The following code fragment shows how to set up the initial context call: Code:Properties props = new Properties();       props.setProperty("java.naming.factory.initial",       "org.openejb.client.LocalInitialContextFactory");         Context ic = new InitialContext(props); Note that I use “org.openejb.client.LocalInitialContextFactory” as the JNDI context factory class. The second interesting fact has to do with the way in which OpenEJB exposes JNDI resources. When an EJB is deployed with both local and remote interfaces in most containers the java:comp/env namespace is used to provide access to local interface EJB resources. In Geronimo 2.2 with OpenEJB this definitely does not work at all. What actually happens is that an additional EJB interface is exposed as a “Local” interface. For example if I had deployed an EJB with the following components: 1) FooSessionEJBLocal - local interface 2) FooSessionEJBRemote - remote interface 3) FooSessionEJBBean - the actual session bean … then OpenEJB will expose FooSessionEJBBean (the remote bean) and another curiously named EJB FooSessionEJBBeanLocal (the local bean). Only the latter can be cast to the FooSessionEJBLocal interface so for example when performing a lookup your code should look like this: Code:try {   Properties props = new Properties();   props.setProperty("java.naming.factory.initial", "org.openejb.client.LocalInitialContextFactory");   Context ic = new InitialContext(props);   FooSessionEJBLocal localFoo =  ic.lookup("FooSessionEJBBeanLocal");   localFoo.bar(); } catch (Exception e){   ... do whatever } Note that the lookup is for “FooSessionEJBBeanLocal” and not “FooSessionEJBLocal". Also note that if you try to bind the remote EJB (FooSessionEJBBean) you can do so but that transactional context of using local EJB will not be managed by JTA (this is important if your code is dependent on operations within the context of the current container transaction). Truth be told I was amazed that nobody on any of the Geronimo mailing lists had figured this out or had posted a workable solution. I had searched high and low for a solution to this. Seems like all the solution examples on Geronimo’s web site were using annotations and everything else I looked at seemed to draw a complete blank. Never being one to give up that easily I decided to hack my way through it. The first trick to be aware of is that like all the other services in Geronimo, the OpenEJB services are installed into the server by means of a resource adapter GBean. This doesn’t matter that much other than that you need to consider this when searching for a solution. So the first thing I did was set up an initial context in my EJB client code (the scenario is Session EJB calls another session EJB using local interface). The following code fragment shows how to set up the initial context call:

Code:

Properties props = new Properties();
      props.setProperty("java.naming.factory.initial",
      "org.openejb.client.LocalInitialContextFactory");
 
      Context ic = new InitialContext(props);

Note that I use “org.openejb.client.LocalInitialContextFactory” as the JNDI context factory class.

The second interesting fact has to do with the way in which OpenEJB exposes JNDI resources. When an EJB is deployed with both local and remote interfaces in most containers the java:comp/env namespace is used to provide access to local interface EJB resources. In Geronimo 2.2 with OpenEJB this definitely does not work at all. What actually happens is that an additional EJB interface is exposed as a “Local” interface. For example if I had deployed an EJB with the following components:

1) FooSessionEJBLocal - local interface
2) FooSessionEJBRemote - remote interface
3) FooSessionEJBBean - the actual session bean

… then OpenEJB will expose FooSessionEJBBean (the remote bean) and another curiously named EJB FooSessionEJBBeanLocal (the local bean). Only the latter can be cast to the FooSessionEJBLocal interface so for example when performing a lookup your code should look like this:

Code:

try {
  Properties props = new Properties();
  props.setProperty("java.naming.factory.initial", "org.openejb.client.LocalInitialContextFactory");
  Context ic = new InitialContext(props);
  FooSessionEJBLocal localFoo =  ic.lookup("FooSessionEJBBeanLocal");
  localFoo.bar();
} catch (Exception e){
  ... do whatever
}

Note that the lookup is for “FooSessionEJBBeanLocal” and not “FooSessionEJBLocal". Also note that if you try to bind the remote EJB (FooSessionEJBBean) you can do so but that transactional context of using local EJB will not be managed by JTA (this is important if your code is dependent on operations within the context of the current container transaction).

Truth be told I was amazed that nobody on any of the Geronimo mailing lists had figured this out or had posted a workable solution.

]]>
FREE EnterpriseDB Training http://blog.pwsindonesia.com/index.php/2011/05/21/free_enterprisedb_training 2011-05-21T11:14:04Z david SOA Solutions in South East Asia Just thought I would drop you all a not on my blog to let you know that PWS is organizing a day of free EnterpriseDB/PostgreSQL training around 9th/10th June 2011 in JAKARTA INDONESIA. If you are interested in attending this training then please contact PWS with the following details: 1) Your Full Name 2) Your contact details (telephone and email) 3) Your company name 4) What you would like to get out of the training. If you can’t decypher the contact details above then just email me directly david(at)pwsindonesia.com … obviously replace the (at) with an @ sign. Just thought I would drop you all a not on my blog to let you know that PWS is organizing a day of free EnterpriseDB/PostgreSQL training around 9th/10th June 2011 in JAKARTA INDONESIA. If you are interested in attending this training then please contact PWS with the following details:
1) Your Full Name
2) Your contact details (telephone and email)
3) Your company name
4) What you would like to get out of the training.

If you can’t decypher the contact details above then just email me directly david(at)pwsindonesia.com … obviously replace the (at) with an @ sign.

]]>

Deprecated: Non-static method Hitlist::dbprune() should not be called statically, assuming $this from incompatible context in /home/pwsconsu/public_html/blog/inc/MODEL/sessions/_hit.class.php on line 483