Hi Harm,
The issue is caused by a configuration error, I am not sure whether you
saw it or not there has to be an exception on the commandline console
when starting the ESB,
[2009-08-27 06:47:12,988] FATAL - ServiceBusInitializer Couldn't
initialize the ESB...
java.lang.NullPointerException
at
org.wso2.carbon.mediation.registry.WSO2Registry.calculatePath(WSO2Registry.java:628)
at
org.wso2.carbon.mediation.registry.WSO2Registry.getResource(WSO2Registry.java:603)
at
org.wso2.carbon.mediation.registry.WSO2Registry.newResource(WSO2Registry.java:380)
at
org.wso2.carbon.mediation.registry.WSO2Registry.newResource(WSO2Registry.java:382)
So it is because of the "root" parameter of the registry declaration.
Let me describe what causes this issue. The WSO2 Registry doesn't
support the file system, if you want the file system as the registry you
need to use the ESBRegistry instead of the WSO2Registry, but in the
configuration as the registry impl class you have specified the
WSO2Registry and the parameter root is invalid in that case.
Please remove the <syn:parameter
name="root">file:./repository/registry/</syn:parameter> from the
registry declaration from your configuration and use one of the
following ways to start the ESB, you will see the issue getting resolved.
I agree the exception is misleading, but clearly this is due to the
wrong configuration. I will get the error to be more descriptive in the
next release. On the other hand when you go into the web ui and paste a
full configuration it is equivalent to editing the synapse.xml file in
the file system :-), since it is a xml that you are pasting, the
validation that you get with the normal web ui like sequence editor
endpoint editor will not be there. Please note that this configuration
tab is for advanced users and has to be used carefully. If you screw the
synapse.xml you need to edit the file by hand.
But as you noted WSO2 ESB now stores the configuration in the registry
and at the first startup it loads the content from the synapse.xml
physical file and stores them in the registry for subsequent starts it
uses the configuration stored in the registry for the startup.
You could clean the stored configuration in the registry and force the
server to load the configuration from the file by passing the
-DuseSynapseXML flag when starting the server. So the startup command
will be;
./wso2server.bat -DuseSynapseXML
On the other hand if you clean the database then it will be picked from
the synapse.xml file for sure. Also note that if you need to cleanup the
full registry with all other stuff like user management and all, you may
use the --cleanRegistry option as well, which is not equivalent to
deleting database and starting up the server, but will cleanup the
registry space for the metadata for the server. So the command to clean
up the registry at startup is;
./wso2server.bat --cleanRegistry
One other thing is that when you delete the database and restarting the
server you better use the -Dsetup flag to let the server know that it
needs to setup the database, it will work without this flag as well, but
is recommended to use that; so the command will be;
./wso2server.sh -Dsetup
To answer your second question, as I explained earlier if you delete the
database, server MUST be reading the configuration from the
conf/synapse.xml for sure, if it is restarting without deleting the
database or without using any of the above options it will be loaded
from the registry. Unless you save the synapse configuration from the
configuration tab it will not be serailized to the file; So when you
paste the config and update the configuration the physical file will not
contain your updates unless you specifically save it, but is stored in
the registry.
Hope this explains it all...
Thanks,
Ruwan
Harm Verhagen wrote:
> OK, something fishy is going on here.
>
> I debugged it a bit and found the following.
>
> * restoring the directory database/ fixes the problem
>
> * then by reapplying my synapse.xml by pasting the contents in the
> webui and hitting save. I can recreate the problem
>
> If I then stop and start the application it fails to start.
> So somehting in the synapse.xml seems to cause this problem. Either
> there is a bug in this synapse.xml that triggers this behavior, or
> there's something wrong with wso2esb that it fails on a particular
> synapse.xml construct.
>
> I tried intensively to narrow down what is wrong but I cant find any
> errors.
>
> I currently have a simplified synapse.xml and xslt file to reproduce
> this problem. They are attached to this mail [1] and [2]
>
> [1] simplified synapse.xml that shows this problem
> [2] xslt file required by this synapse file.
>
> How to reproduce.
> 1) put test.xslt in repository\registry\transform\test.xslt
> 2) past the contents of [1] in the webui synapse.
> 3) hit save (all ok)
> 4) stop esb
> 5) start esb
> -> et voila ......
>
>
> One other question:
> - when I restore the directory database/ why doesn't wso2esb read
> the contents of conf/synapse.xml.. Whenever I start the esb, it does
> not show any of the sequences of synapse.xml as if it doesn't read the
> file. When I then paste the contents in the webui, the contents are
> taken into account (and hitting save, ready modifies _that_ file.
> What is going on here ? isn't the file conf/synapse.xml leading anymore ?
>
>
> Regards,
> Harm
>
>
> On Wed, Aug 26, 2009 at 11:30 PM, Harm Verhagen
> <[email protected] <mailto:[email protected]>> wrote:
>
> Hi,
>
>
> I'm playing around with wso2esb v2.1
> Now all of a sudden the app doesn't boot anymore.
>
> As far as I can rememnber I have just edited stuff via the webui,
> nothing on the filesystem itself.
>
> During startup it keeps giving:
>
> [2009-08-26 23:06:57,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
> 2.carbon.mediation.initializer.services.SynapseEnvironmentService
> [2009-08-26 23:07:07,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
> 2.carbon.mediation.initializer.services.SynapseEnvironmentService,
> [2009-08-26 23:07:17,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
> 2.carbon.mediation.initializer.services.SynapseEnvironmentService,
> [2009-08-26 23:07:27,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
> 2.carbon.mediation.initializer.services.SynapseEnvironmentService,
> [2009-08-26 23:07:37,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
> 2.carbon.mediation.initializer.services.SynapseEnvironmentService,
> [2009-08-26 23:07:47,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
> 2.carbon.mediation.initializer.services.SynapseEnvironmentService,
> [2009-08-26 23:07:57,421] WARN - StartupFinalizerServiceComponent
> Waiting for required OSGi services: org.wso
>
> Any idea whats going on here ?
> rebooting PC does NOT help.
> restoring synapse.xml to the original (as in the wso2esb release)
> does NOT help.
> This is kinda scary stuff, (that the hole esb can stop working.)
>
> version
> wso2esb v2.1.0 on windows XP home, java sun 1.6.0_12
>
> attached is the complete bootlog.
> Note: There are quite some
> WARN - TransportMBeanSupport Error registering a MBean with
> objectname .. in the bootlog.. although I remenber them beeing
> there before, while the system just booted fine.
>
>
> Regards,
> Harm
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Esb-java-user mailing list
> [email protected]
> https://wso2.org/cgi-bin/mailman/listinfo/esb-java-user
--
Ruwan Linton
Technical Lead & Product Manager; WSO2 ESB; http://wso2.org/esb
WSO2 Inc.; http://wso2.org
email: [email protected]; cell: +94 77 341 3097
blog: http://blog.ruwan.org
_______________________________________________
Esb-java-user mailing list
[email protected]
https://wso2.org/cgi-bin/mailman/listinfo/esb-java-user