Blog is moved to a new location!

My blog is moved to a new location.
From now on you will find all the old posts both on https://eelzinga.wordpress.com and http://blog.xenta.nl/

The new posts will only get added to http://blog.xenta.nl

Post new comments on the new blog location!

Hope you will enjoy the new site!

Oracle Service Bus, BEA-423405, java.lang.NullPointerException

When trying to browse the java libs from my osb project i get the next stacktrace in the console.

<BEA-423405> <An exception [null] was thrown while rendering the content at [/jsp/resources/archive/ArchiveBrowser.jsp].
java.lang.NullPointerException
        at jsp_servlet._jsp._resources._archive.__archivebrowserdetails._jspService(__archivebrowserdetails.java:101)
        at weblogic.servlet.jsp.JspBase.service(JspBase.java:35)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:43)
        at org.apache.beehive.netui.pageflow.PageFlowPageFilter.continueChainNoWrapper(PageFlowPageFilter.java:456)
        at org.apache.beehive.netui.pageflow.PageFlowPageFilter.runPage(PageFlowPageFilter.java:432)
        at org.apache.beehive.netui.pageflow.PageFlowPageFilter.doFilter(PageFlowPageFilter.java:284)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:43)
        at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:503)
        at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:432)
        at weblogic.servlet.jsp.PageContextImpl.include(PageContextImpl.java:164)
        at jsp_servlet._jsp._resources._archive.__archivebrowser._jspService(__archivebrowser.java:978)
        at weblogic.servlet.jsp.JspBase.service(JspBase.java:35)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:27)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:43)
        at org.apache.beehive.netui.pageflow.PageFlowPageFilter.continueChainNoWrapper(PageFlowPageFilter.java:456)
        at org.apache.beehive.netui.pageflow.PageFlowPageFilter.runPage(PageFlowPageFilter.java:432)
        at org.apache.beehive.netui.pageflow.PageFlowPageFilter.doFilter(PageFlowPageFilter.java:284)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:43)
        at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:503)
        at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:432)
        at org.apache.beehive.netui.pageflow.scoping.internal.ScopedRequestDispatcher.include(ScopedRequestDispatcher.java:119)
        at com.bea.netuix.servlets.controls.content.JspContent.beginRender(JspContent.java:552)
        at com.bea.netuix.servlets.controls.content.NetuiContent.beginRender(NetuiContent.java:365)
        at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:485)
        at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518)
        at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529)
        at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529)
        at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529)
        at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220)
        at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:395)
        at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:361)
        at com.bea.netuix.nf.Lifecycle.processLifecycles(Lifecycle.java:352)
        at com.bea.netuix.nf.Lifecycle.run(Lifecycle.java:326)
        at com.bea.netuix.nf.UIControl.render(UIControl.java:583)
        at com.bea.netuix.servlets.controls.PresentationContext.render(PresentationContext.java:486)
        at com.bea.netuix.servlets.util.RenderToolkit.renderChild(RenderToolkit.java:146)
        at com.bea.netuix.servlets.jsp.taglib.RenderChild.doStartTag(RenderChild.java:62)
        at jsp_servlet._framework._skeletons._wliconsole.__flowlayout._jspService(__flowlayout.java:273)
        at weblogic.servlet.jsp.JspBase.service(JspBase.java:35)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:176)
        at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:505)
        at weblogic.servlet.internal.RequestDispatcherImpl.include(RequestDispatcherImpl.java:432)
        at com.bea.netuix.servlets.controls.application.laf.JspTools.renderJsp(JspTools.java:132)
        at com.bea.netuix.servlets.controls.application.laf.JspControlRenderer.beginRender(JspControlRenderer.java:72)
        at com.bea.netuix.servlets.controls.application.laf.PresentationControlRenderer.beginRender(PresentationControlRenderer.java:65)
        at com.bea.netuix.nf.ControlLifecycle$7.visit(ControlLifecycle.java:481)
        at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:518)
        at com.bea.netuix.nf.ControlTreeWalker.walkRecursiveRender(ControlTreeWalker.java:529)
        at com.bea.netuix.nf.ControlTreeWalker.walk(ControlTreeWalker.java:220)
...

Make sure the rights in unix on the osb domain directory are correctly set on group stage.
In my case only the user had the correct rights.

** update
We noticed the problem came back on our development enviroment, without things got changed on filesystem.
One of the dba thought it had something to do with the caching weblogic creates during clicking around in the console.
Restarting the admin server (restarting the managed servers wasn’t needed) fixed the problem for us, and cleared the cache too.

Oracle Service Bus, MFL and empty element-tree in xquery

Sometimes it will happen after creating the mfl and trying to map the elements in xquery to the target, the element-tree of the mfl won’t be visible and only shows the head-element.
Open the mfl file in a text-editor and change the version-attribute of the MessageFormat-tag to ‘2.02’

<MessageFormat name='MyMFLFormat' version='2.01'>

to

<MessageFormat name='MyMFLFormat' version='2.02'>

Oracle Fusion Middleware 11g got released!

Finally the new Oracle Fusion Middleware 11g got released!

The webcast can be seen over here.
Some of the available resources like tutorials on Oracle WebLogic Suite 11g, Oracle SOA Suite 11g, Oracle Identity Management 11g and Oracle WebCenter Suite 11g
And the download!

How do the Oracle ACES think about the suite ?

The new Oracle JDeveloper 11g R1 got released too, code name Bulldog.
The download and a lot of new features!

So, a lot of new stuff to play with!

RESTful Services with Oracle Service Bus

Restify existing services

Today i came across a nice article from jeff x davies on “RESTful Services with Oracle Service Bus“.
A nice example on how to map the different http methods to your flows in osb.
The testconsole is easy to use when doing the http calls and adding the query parameters (id=10).

But why mapping non-rest services to and rest interface

  1. You automatically get all of the monitoring, reporting, security and more provided by OSB for your RESTful services
  2. You keep the benefits of mediation. For example, of our company in this example purchased another company that provided different products, you could use the OSB to act as a fa├žade over both product catalogs while providing a single, unchanged REST interface.
  3. You can REST-ify existing, non-service enabled assets like EJBs

Some other good links

The Open Group has released their SOA Source Book

The Open Group has released their SOA Source Book.

The introduction tells us “The Open Group’s SOA Source Book is a collection of source material for use by enterprise architects working with Service-Oriented Architecture. The material reflects input from a large number of people from a wide range of Open Group member companies, including product vendors, consultancies, and users of SOA. In some cases, these people have brought concepts developed, not just by themselves, but by groups of people within their organizations. The input has been refined and further developed through discussion within the Working Group. The value in the result is due to the ideas and efforts of the Working Group members.”

The book is free for online reading, go get it!

Oracle buys Sun, another one for the collection

Oracle buys Sun, and another one for the collection

The blogreaders keep popping up with the blogs about the new acquisition of Oracle.
Lately Oracle already bought BEA, and from this acquisition the new stack isn’t even ready yet.
A lot of new products, overlapping eachother so Oracle will need to decide what products will go on on development, and what will parts will flow away.

IDE

  • Oracle Jdeveloper
  • Eclipse
  • Netbeans

JVM

  • Sun JDK
  • JRocket

Application Server

  • Oracle AS/OC4J (already replaced)
  • BEA Weblogic
  • Sun Glassfish

SOA Integration

  • Oracle SOA Suite
  • Open ESB

Database

  • Oracle DB
  • MySQL

SSO

  • Oracle SSO
  • OpenSSO

Portal

  • Sun Portal Server
  • Oracle Portal
  • BEa Portal Server

DS

  • Oracle Internet Directory
  • OpenDS

The list isn’t completed but it will just give a short overview, i will add more compairs later.

I think in most situations Oracle will keep supporting the several versions of the products in the stacks.
After the BEA acquisition we already had a few products in the stack with overlap, but if we compair BEA and Oracle they both had a set of ‘closed/propriatery’ products/functionality.
The portfolio of Sun is mostly based (for as far i know) on open source products with a really big community behind it. I don’t think Oracle would spoil this big part of the market and on they other site would replace every ‘closed product’ with a open source variant of the Sun stack.
So i think it will be on the one site a mix of Oracle/BEA products and on the other site the portfolio for the Sun portfolio (open source).

Besides just filling in a new portfolio (again) of the overall stack of Oracle, i think they will even more invest and support the open source community.

Good to see some can still enjoy a bit of humor!