-
1. Re: Jboss 4.2.1 clustering bug ?
brian.stansberry Feb 26, 2008 1:19 PM (in response to islpe)Is everything your application needs all packaged together in whatever you put in deploy-hasingleton?
I have no idea about Cocoon internal or what it's doing in that call. But if your application is entirely self-contained, there should be no difference in its ability to find resources from deploying it via deploy-hasingleton vs. deploy.
Don't file a bug until we get establish what it is we're talking about. -
2. Re: Jboss 4.2.1 clustering bug ?
islpe Feb 27, 2008 4:35 AM (in response to islpe)The application is a war file and reads EDI files and applies these as updates to the database. There are few html pages where you can 'take the temperature' of the application, and it is on these pages that the error occurrs.
One difference between Jboss 3.2.2 and jboss 4.2.1 is the use of Avalon framework. This is in 4.2.1 placed in lib directory whereas it was not present in 3.2.2. Since Cocoon uses Avalon framework I had to use isolation(http://wiki.jboss.org/wiki/Wiki.jsp?page=ClassLoadingConfiguration, updated jboss-web.xml and this made the application run as it should in deploy directory under 4.2.1. Here are the scenarios I have tried. All have been deployed in deploy-hasingleton
1) Put the war file in deploy-hasingleton, as it is described in the Jboss Clustering Guide. The error occurred and this is shown in the log
Only the root deployment can set the loader repository, ignoring config=LoaderRepositoryConfig(repositoryName: jboss.dataintegration:war=dataintegration.war, repositoryClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3, configParserClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3ConfigParser, repositoryConfig: java2ParentDelegation=false)
but according to 'http://wiki.jboss.org/wiki/Wiki.jsp?page=GetWARNquotOnlyTheRootDeploymentCanSetTheLoaderRepositoryquotOn3.2.5', this can be ignored
2) Created a SAR and a jboss-service.xml with isolation and and an mbean containing HASingletonController. The same error occurred, but again this is shown in the log
Only the root deployment can set the loader repository, ignoring config=LoaderRepositoryConfig(repositoryName: jboss.dataintegration:sar=dataintegration.sar, repositoryClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3, configParserClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3ConfigParser, repositoryConfig: java2ParentDelegation=false)
for both sar and war
3) Created a SAR and a jboss-service.xml with isolation and and an mbean containing HASingletonController but this time the isolation in jboss-web.xml in the war file is removed. The same error occurred, but again this is shown in the log:
Only the root deployment can set the loader repository, ignoring config=LoaderRepositoryConfig(repositoryName: jboss.dataintegration:sar=dataintegration.sar, repositoryClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3, configParserClassName: org.jboss.mx.loading.HeirarchicalLoaderRepository3ConfigParser, repositoryConfig: java2ParentDelegation=false)
I think it is odd that each time the application is deployed in deploy-hasingleton and fails, the text about root deployment that can be ignored, is showing.
I used to think that this problem wa related to classpath, but I am not so sure
Lasse Petersen -
3. Re: Jboss 4.2.1 clustering bug ?
brian.stansberry Feb 27, 2008 9:51 AM (in response to islpe)Try deploying you war in deploy, no sar or HASingletonController, with your classloader isolation in jboss-web.xml. That is, the way it works. But add to jboss-web.xml a depenedency on the HASingleton BarrierController as described at http://labs.jboss.com/file-access/default/members/jbossas/freezone/docs/Clustering_Guide/beta422/html/ch05s11s03.html
From a quick look, seems like the Avalon dependency is being pulled in via the IIOP module's use of Jacorb. Another possible approach is disabling use of IIOP (if you don't need it), but I've never done that and can't say how much of a ripple effect it might have. -
4. Re: Jboss 4.2.1 clustering bug ?
islpe Feb 27, 2008 2:36 PM (in response to islpe)Thanks for the suggestion
I have done as you and the doc described and the application starts nicely up and no error occurred. But the real test comes when I deploy it into the cluster next week. I will get back with the result
Lasse Petersen -
5. Re: Jboss 4.2.1 clustering bug ?
islpe Mar 7, 2008 2:53 AM (in response to islpe)The service deploy-hasingleton.service does exactly what we want, and since your first proposal does not offer this, we decided to try out your second proposal: removing avalon from jboss/lib and remove iiop_service.xml from deploy directory.
This has so far been working. Jboss as well as the application starts up, and I can get the html pages from our application. We have not yet done a thorough testting, bu we will do so.
My conclusion is that while class isolation works when the application is deployed in deplo directory, it does not work when deployed in deploy-hasingleton directory. To me that sounds like a bug. -
6. Re: Jboss 4.2.1 clustering bug ?
islpe Mar 7, 2008 2:54 AM (in response to islpe)and the message in the log about 'Only the root deployment..,' that can be ignored is invalid in this situation
-
7. Re: Jboss 4.2.1 clustering bug ?
brian.stansberry Mar 7, 2008 10:07 AM (in response to islpe)"islpe" wrote:
My conclusion is that while class isolation works when the application is deployed in deplo directory, it does not work when deployed in deploy-hasingleton directory. To me that sounds like a bug.
Agreed. http://jira.jboss.org/jira/browse/JBAS-5284
Please be sure and post back on how your testing of the barrier controller approach works.