[Design of Messaging on JBoss (Messaging/JBoss)] - Service lifecycle is broken for JBoss Messaging
by adrian@jboss.org
If I touch hqsldb-ds.xml in jboss-head, JMS does not redeploy.
| 15:32:53,633 ERROR [AbstractKernelController] Error installing to Start: name=jboss.messaging:service=PersistenceManager state=Create mode=Manual requiredState=Installed
| org.jboss.util.NestedSQLException: You are trying to use a connection factory that has been shut down: ManagedConnectionFactory is null.; - nested throwable: (javax.resource.ResourceException: You are trying to use a connection factory that has been shut down: ManagedConnectionFactory is null.)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:94)
| at org.jboss.messaging.core.plugin.JDBCSupport.createSchema(JDBCSupport.java:218)
| at org.jboss.messaging.core.plugin.JDBCSupport.start(JDBCSupport.java:156)
| at org.jboss.messaging.core.plugin.JDBCPersistenceManager.start(JDBCPersistenceManager.java:123)
| at org.jboss.messaging.core.plugin.JDBCPersistenceManagerService.startService(JDBCPersistenceManagerService.java:88)
| at org.jboss.system.ServiceMBeanSupport.jbossInternalStart(ServiceMBeanSupport.java:289)
| at org.jboss.system.ServiceMBeanSupport.start(ServiceMBeanSupport.java:196)
|
The reason is that the start() method is not retrieving the new datasource,
it is caching the old one.
| protected void startService() throws Exception
| {
| try
| {
| if (ds == null)
| {
| InitialContext ic = new InitialContext();
| ds = (DataSource)ic.lookup(dataSourceJNDIName);
| ic.close();
| }
|
This is just broken. What's the point of a service lifecycle and dependencies
if you ignore it?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4063987#4063987
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4063987
18 years, 9 months
[Design of JCA on JBoss] - Re: JCA AOP-MC Integration
by vickyk
"kabir.khan(a)jboss.com" wrote :
| As a temporary fix, try overwriting your local maven snapshot with the jar from the old thirdparty repository http://repository.jboss.org/jboss/aop/snapshot/lib/jboss-aop-jdk50.jar
|
Yes it worked :)
Now the adapter tests are failing with
Test set: org.jboss.test.JBossMQUnitTestCase
| -------------------------------------------------------------------------------
| Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 1.015 sec <<< FAILURE!
| testNoTx(org.jboss.test.JBossMQUnitTestCase) Time elapsed: 0 sec <<< ERROR!
| java.lang.IllegalStateException: Incompletely deployed:
| *** DEPLOYMENTS IN ERROR: Name -> Error
| DestinationManager -> java.lang.ClassNotFoundException: org.jboss.mq.kernel.DestinationManager
| PersistenceManager -> java.lang.ClassNotFoundException: org.jboss.mq.pm.none.PersistenceManager
| MessageCache -> java.lang.ClassNotFoundException: org.jboss.mq.kernel.MessageCache
| RealQueue -> java.lang.ClassNotFoundException: org.jboss.mq.server.JMSQueue
| ServerIL -> java.lang.ClassNotFoundException: org.jboss.mq.il.jvm.JVMServerIL
| StateManager -> java.lang.ClassNotFoundException: org.jboss.mq.sm.none.NullStateManager
| ConnectionFactory -> java.lang.ClassNotFoundException: org.jboss.mq.SpyConnectionFactory
| Queue -> java.lang.ClassNotFoundException: org.jboss.mq.SpyQueue
| Invoker -> java.lang.ClassNotFoundException: org.jboss.mq.server.JMSServerInvoker
| GCF -> java.lang.ClassNotFoundException: org.jboss.mq.GenericConnectionFactory
| *** DEPLOYMENTS MISSING DEPENDENCIES: Name -> Dependency{Required State:Actual State}
| JMSServer -> DestinationManager{Instantiated:**ERROR**}
|
| at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.internalValidate(AbstractKernelDeployer.java:260)
| at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.validate(AbstractKernelDeployer.java:174)
| at org.jboss.test.kernel.junit.MicrocontainerTestDelegate.validate(MicrocontainerTestDelegate.java:199)
| at org.jboss.test.kernel.junit.MicrocontainerTest.setUp(MicrocontainerTest.java:68)
| at junit.framework.TestCase.runBare(TestCase.java:125)
| at junit.framework.TestResult$1.protect(TestResult.java:106)
| at junit.framework.TestResult.runProtected(TestResult.java:124)
| at junit.framework.TestResult.run(TestResult.java:109)
| at junit.framework.TestCase.run(TestCase.java:118)
| at junit.framework.TestSuite.runTest(TestSuite.java:208)
| at junit.framework.TestSuite.run(TestSuite.java:203)
| at junit.extensions.TestDecorator.basicRun(TestDecorator.java:22)
| at junit.extensions.TestSetup$1.protect(TestSetup.java:19)
| at junit.framework.TestResult.runProtected(TestResult.java:124)
| at junit.extensions.TestSetup.run(TestSetup.java:23)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.apache.maven.surefire.junit.JUnitTestSet.execute(JUnitTestSet.java:213)
| at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.executeTestSet(AbstractDirectoryTestSuite.java:138)
| at org.apache.maven.surefire.suite.AbstractDirectoryTestSuite.execute(AbstractDirectoryTestSuite.java:125)
| at org.apache.maven.surefire.Surefire.run(Surefire.java:132)
| at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
| at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.apache.maven.surefire.booter.SurefireBooter.runSuitesInProcess(SurefireBooter.java:290)
| at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:818)
| at org.apache.maven.surefire.booter.SurefireBooter.main(SurefireBooter.java:818)
|
|
I want to know the Maven repository details for the jbossmq , I am not able to get it .
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4063943#4063943
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4063943
18 years, 9 months
[Design the new POJO MicroContainer] - Re: ClassInfo being serializable
by adrian@jboss.org
"alesj" wrote : "adrian(a)jboss.org" wrote :
| | But you'll probably need to introduce a Reflection* subclass for
| | each to make the serialization work,
| |
| I did a quick change - moved readResolve() from ClassInfoImpl to ReflectClassInfoImpl.
| How come all the tests still work?
| Not covering all the corner cases?
|
When I said you need to post in the forums, I meant with proposed solutions,
not for me to do your work for you. ;-)
If I make those changes and add extra System.out.printlns to the before
and after object of serialization, I get the following output:
| 139 DEBUG [IntrospectionArrayUnitTestCase] Type: class [Lorg.jboss.test.classinfo.support.ClassInfoAnnotationClass;
| BEFORE ======> ArrayInfoImpl(a)17653ae{name=[Lorg.jboss.test.classinfo.support.ClassInfoAnnotationClass;}
| AFTER ======> ArrayInfoImpl(a)134f69a{name=[Lorg.jboss.test.classinfo.support.ClassInfoAnnotationClass;}
|
So these are not the same object. i.e. no ReadResolve
You should really be asserting that you get the same object back.
Also these tests are inadequete. You are only testing the ClassInfo parts
of the serialized objects.
Each test must serialize and deserialize its own object and test ALL its fields.
e.g. does the array have the correct component type, etc. Has it been
readResolved properly?
"adrian(a)jboss.org" wrote :
| i.e. add readResolve() into the introspection factory.
|
What about if I add a super class for all Reflection* subclases with readResolve there?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4063924#4063924
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4063924
18 years, 9 months