-
1. Re: AppClientDeployer
wolfc Oct 16, 2007 3:39 PM (in response to starksm64)Go for it. I'm still trying to introduce service bean, generic bean and consumer bean into metadata.
-
2. Re: AppClientDeployer
starksm64 Oct 19, 2007 9:03 AM (in response to starksm64)I have a deployment going through the deployers and getting to the Ejb3ClientDeployer which is installing a ClientENCInjectionContainer bean. The client enc is not getting setup though, presumably because the injectors don't have the metadata.
The old ejb3 metadata propagates out the injectors via the EnvironmentRefGroup. I have started working on a EnvironmentRefGroupConveter that takes the new JBossClientMetaData.getJBossJndiEnvironmentRefsGroup and exposes this as a EnvironmentRefGroup. The question is this worth doing, or should this start using the new metadata model? -
3. Re: AppClientDeployer
wolfc Oct 19, 2007 10:54 AM (in response to starksm64)Use the new metadata. Is the new client deployer coming in the server module?
Unless you disabled something the old ejb 3 metamodel should still function. -
4. Re: AppClientDeployer
starksm64 Oct 26, 2007 3:43 AM (in response to starksm64)I have the new metadata wired to the old model and this is flowing through to the client injection handlers, and I see the container being passed to the kernel to be started, but its not starting. It seems the dependencies are not being statisifed, but I don't see any error being generated. Because the client container is not being started the remote client is not seeing its enc and fails. Don't know if how the Ejb3ClientDeployer is registering the bean is bypassing the completion check. I'll look at it tomorrow.
-
5. Re: AppClientDeployer
starksm64 Oct 26, 2007 12:33 PM (in response to starksm64)Carlo said he has seen this when dependent deployments are not fully started. There is just a slient failure to start the client container by the mc. Need to fix this to produce an error.
-
6. Re: AppClientDeployer
alesj Oct 27, 2007 5:22 AM (in response to starksm64)Let me know if you need any help.
Or how do I reproduce this? -
7. Re: AppClientDeployer
starksm64 Oct 27, 2007 11:21 AM (in response to starksm64)If you can look at it that would be great. Its reproduced by running the org.jboss.test.client.test.AppClientUnitTestCase from the ide, or command line from the testsuite directory:
[starksm@succubus testsuite]$ ant -Dtest=org.jboss.test.client.test.AppClientUnitTestCase -Dnojars=t
The server console output should look something like the following:08:14:23,970 INFO [MainDeployer] deploy, url=file:/home/svn/JBossHead/jboss-head/testsuite/output/resources/messaging/test-destinations-full-service.xml 08:14:24,022 INFO [TopicService] Topic[/topic/testTopic] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,032 INFO [TopicService] Topic[/topic/securedTopic] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,041 INFO [TopicService] Topic[/topic/testDurableTopic] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,062 INFO [QueueService] Queue[/queue/testQueue] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,072 INFO [QueueService] Queue[/queue/testObjectMessage] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,102 INFO [QueueService] Queue[/queue/A] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,109 INFO [QueueService] Queue[/queue/B] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,115 INFO [QueueService] Queue[/queue/C] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,129 INFO [QueueService] Queue[/queue/D] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,137 INFO [QueueService] Queue[/queue/ex] started, fullSize=200000, pageSize=2000, downCacheSize=2000 08:14:24,149 INFO [MainDeployer] deploy, url=file:/home/svn/JBossHead/jboss-head/testsuite/output/lib/app-client.ear 08:14:24,626 WARN [CollectionPropertyHandler] ClassInfo.getDeclaredConstructor(null) didn't work for org.jboss.metadata.ejb.spec.InterceptorClassesMetaData, found the default ctor in ClassInfo.getDeclaredConstructors() 08:14:25,498 INFO [EnvironmentRefGroupConveter] Converted 2 refs: [ejb/StatelessSessionBean2, ejb/StatelessSessionBean] 08:14:25,548 INFO [EnvironmentRefGroupConveter] Converted 2 msgRefs: [jms/anotherQueue2, jms/anotherQueue] 08:14:25,553 INFO [EnvironmentRefGroupConveter] Converted 3 envRefs: [jms/anotherQueue, TheOtherQueue, jms/aQueue] 08:14:25,557 INFO [EnvironmentRefGroupConveter] Converted 2 resRefs: [url/JBossHome, url/IndirectURL] 08:14:25,562 INFO [EnvironmentRefGroupConveter] Converted 3 envs: [Long0, Float0, String0] 08:14:25,576 INFO [MCKernelAbstraction] installing bean: jboss.j2ee:ear=app-client.ear,jar=app-client.jar,name=test-client,service=EJB3 with dependencies: 08:14:25,577 INFO [MCKernelAbstraction] EjbLinkDemandMetaData@4cd4aaf6{demand=jboss.j2ee:ear=app-client.ear,name=StatelessSessionBean,service=EJB3,* whenRequired=Described} 08:14:25,578 INFO [MCKernelAbstraction] JndiDemandMetaData@56afd9e3{demand=ejbcts/StatelessSessionHome whenRequired=Installed} 08:14:25,578 INFO [MCKernelAbstraction] and supplies: 08:14:25,827 INFO [EjbModule] Deploying FacadeStatefulSessionBean 08:14:26,129 INFO [EjbModule] Deploying BMPBean 08:14:26,220 INFO [EjbModule] Deploying StrictlyPooledStatelessBean 08:14:26,240 INFO [EjbModule] Deploying EJBTestRunnerEJB 08:14:26,257 INFO [EjbModule] Deploying CallerSessionBean 08:14:26,262 INFO [EjbModule] Deploying SubclassMDB 08:14:26,310 INFO [EjbModule] Deploying StrictlyPooledMDB 08:14:26,315 INFO [EjbModule] Deploying CalleeSessionBean 08:14:26,320 INFO [EjbModule] Deploying LongWaitStatefulSessionBean 08:14:26,325 INFO [EjbModule] Deploying StatefulSessionBean 08:14:26,329 INFO [EjbModule] Deploying BMPCallbackBean 08:14:26,334 INFO [EjbModule] Deploying StrictlyPooledStatefulBean 08:14:26,339 INFO [EjbModule] Deploying CMPBean2 08:14:26,376 INFO [EjbModule] Deploying StrictlyPooledCreateExceptionBean 08:14:26,381 INFO [EjbModule] Deploying CMPBean 08:14:26,386 INFO [EjbModule] Deploying CMPBeanOptionD 08:14:26,411 INFO [EjbModule] Deploying BMTStatefulSessionBean 08:14:26,417 INFO [EjbModule] Deploying StatelessSessionBean 08:14:30,138 INFO [ProxyFactory] Bound EJB Home 'FacadeStatefulSessionBean' to jndi 'ejbcts/FacadeStatefulSessionBean' 08:14:30,179 INFO [ProxyFactory] Bound EJB Home 'BMPBean' to jndi 'ejbcts/BMPBean' 08:14:30,221 INFO [ProxyFactory] Bound EJB Home 'StrictlyPooledStatelessBean' to jndi 'ejbcts/StrictlyPooledStatelessBean' 08:14:30,253 INFO [ProxyFactory] Bound EJB Home 'EJBTestRunnerEJB' to jndi 'ejb/EJBTestRunner' 08:14:30,295 INFO [ProxyFactory] Bound EJB Home 'CallerSessionBean' to jndi 'ejbcts/CallerSessionHome' 08:14:30,469 INFO [ProxyFactory] Bound EJB Home 'CalleeSessionBean' to jndi 'ejbcts/CalleeSessionHome' 08:14:30,707 INFO [ProxyFactory] Bound EJB Home 'LongWaitStatefulSessionBean' to jndi 'ejbcts/LongWaitStatefulSessionBean' 08:14:30,763 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'StatefulSessionBean' to jndi 'ejbcts/StatefulSessionLocalBean' 08:14:30,765 INFO [ProxyFactory] Bound EJB Home 'StatefulSessionBean' to jndi 'ejbcts/StatefulSessionBean' 08:14:30,807 INFO [ProxyFactory] Bound EJB Home 'BMPCallbackBean' to jndi 'ejbcts/BMPCallbackBean' 08:14:31,016 INFO [ProxyFactory] Bound EJB Home 'StrictlyPooledStatefulBean' to jndi 'ejbcts/StrictlyPooledStatefulBean' 08:14:31,048 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'CMPBean2' to jndi 'ejbcts/LocalCMPBean2' 08:14:31,054 INFO [ProxyFactory] Bound EJB Home 'CMPBean2' to jndi 'ejbcts/CMPBean2' 08:14:31,094 INFO [ProxyFactory] Bound EJB Home 'StrictlyPooledCreateExceptionBean' to jndi 'ejbcts/StrictlyPooledCreateExceptionBean' 08:14:31,122 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'CMPBean' to jndi 'ejbcts/LocalCMPBean' 08:14:31,125 INFO [ProxyFactory] Bound EJB Home 'CMPBean' to jndi 'ejbcts/CMPBean' 08:14:31,175 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'CMPBeanOptionD' to jndi 'ejbcts/LocalCMPBeanOptionD' 08:14:31,176 INFO [ProxyFactory] Bound EJB Home 'CMPBeanOptionD' to jndi 'ejbcts/CMPBeanOptionD' 08:14:31,206 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'BMTStatefulSessionBean' to jndi 'ejbcts/BMTStatefulSessionLocalBean' 08:14:31,208 INFO [ProxyFactory] Bound EJB Home 'BMTStatefulSessionBean' to jndi 'ejbcts/BMTStatefulSessionBean' 08:14:31,244 INFO [BaseLocalProxyFactory] Bound EJB LocalHome 'StatelessSessionBean' to jndi 'local/StatelessSessionBean@1333276419' 08:14:31,251 INFO [ProxyFactory] Bound EJB Home 'StatelessSessionBean' to jndi 'ejbcts/StatelessSessionHome' 08:14:31,491 INFO [BaseLocalProxyFactory] Unbind EJB LocalHome 'StatelessSessionBean' from jndi 'local/StatelessSessionBean@1333276419' 08:14:31,493 INFO [BaseLocalProxyFactory] Unbind EJB LocalHome 'BMTStatefulSessionBean' from jndi 'ejbcts/BMTStatefulSessionLocalBean' 08:14:31,550 INFO [BaseLocalProxyFactory] Unbind EJB LocalHome 'CMPBeanOptionD' from jndi 'ejbcts/LocalCMPBeanOptionD' 08:14:31,552 INFO [BaseLocalProxyFactory] Unbind EJB LocalHome 'CMPBean' from jndi 'ejbcts/LocalCMPBean' 08:14:31,554 INFO [BaseLocalProxyFactory] Unbind EJB LocalHome 'CMPBean2' from jndi 'ejbcts/LocalCMPBean2' 08:14:31,557 INFO [BaseLocalProxyFactory] Unbind EJB LocalHome 'StatefulSessionBean' from jndi 'ejbcts/StatefulSessionLocalBean' 08:14:31,572 INFO [ProxyFactory] Unbind EJB Home 'StatelessSessionBean' from jndi 'ejbcts/StatelessSessionHome' 08:14:31,575 INFO [EjbModule] Undeployed StatelessSessionBean 08:14:31,575 INFO [ProxyFactory] Unbind EJB Home 'BMTStatefulSessionBean' from jndi 'ejbcts/BMTStatefulSessionBean' 08:14:31,577 INFO [EjbModule] Undeployed BMTStatefulSessionBean 08:14:31,578 INFO [ProxyFactory] Unbind EJB Home 'CMPBeanOptionD' from jndi 'ejbcts/CMPBeanOptionD' 08:14:31,579 INFO [EjbModule] Undeployed CMPBeanOptionD 08:14:31,579 INFO [ProxyFactory] Unbind EJB Home 'CMPBean' from jndi 'ejbcts/CMPBean' 08:14:31,581 INFO [EjbModule] Undeployed CMPBean 08:14:31,582 INFO [ProxyFactory] Unbind EJB Home 'StrictlyPooledCreateExceptionBean' from jndi 'ejbcts/StrictlyPooledCreateExceptionBean' 08:14:31,583 INFO [EjbModule] Undeployed StrictlyPooledCreateExceptionBean 08:14:31,583 INFO [ProxyFactory] Unbind EJB Home 'CMPBean2' from jndi 'ejbcts/CMPBean2' 08:14:31,584 INFO [EjbModule] Undeployed CMPBean2 08:14:31,584 INFO [ProxyFactory] Unbind EJB Home 'StrictlyPooledStatefulBean' from jndi 'ejbcts/StrictlyPooledStatefulBean' 08:14:31,586 INFO [EjbModule] Undeployed StrictlyPooledStatefulBean 08:14:31,586 INFO [ProxyFactory] Unbind EJB Home 'BMPCallbackBean' from jndi 'ejbcts/BMPCallbackBean' 08:14:31,588 INFO [EjbModule] Undeployed BMPCallbackBean 08:14:31,588 INFO [ProxyFactory] Unbind EJB Home 'StatefulSessionBean' from jndi 'ejbcts/StatefulSessionBean' 08:14:31,590 INFO [EjbModule] Undeployed StatefulSessionBean 08:14:31,590 INFO [ProxyFactory] Unbind EJB Home 'LongWaitStatefulSessionBean' from jndi 'ejbcts/LongWaitStatefulSessionBean' 08:14:31,592 INFO [EjbModule] Undeployed LongWaitStatefulSessionBean 08:14:31,592 INFO [ProxyFactory] Unbind EJB Home 'CalleeSessionBean' from jndi 'ejbcts/CalleeSessionHome' 08:14:31,593 INFO [EjbModule] Undeployed CalleeSessionBean 08:14:31,594 INFO [EjbModule] Undeployed StrictlyPooledMDB 08:14:31,596 INFO [EjbModule] Undeployed SubclassMDB 08:14:31,596 INFO [ProxyFactory] Unbind EJB Home 'CallerSessionBean' from jndi 'ejbcts/CallerSessionHome' 08:14:31,597 INFO [EjbModule] Undeployed CallerSessionBean 08:14:31,597 INFO [ProxyFactory] Unbind EJB Home 'EJBTestRunnerEJB' from jndi 'ejb/EJBTestRunner' 08:14:31,598 INFO [EjbModule] Undeployed EJBTestRunnerEJB 08:14:31,599 INFO [ProxyFactory] Unbind EJB Home 'StrictlyPooledStatelessBean' from jndi 'ejbcts/StrictlyPooledStatelessBean' 08:14:31,600 INFO [EjbModule] Undeployed StrictlyPooledStatelessBean 08:14:31,601 INFO [ProxyFactory] Unbind EJB Home 'BMPBean' from jndi 'ejbcts/BMPBean' 08:14:31,602 INFO [EjbModule] Undeployed BMPBean 08:14:31,603 INFO [ProxyFactory] Unbind EJB Home 'FacadeStatefulSessionBean' from jndi 'ejbcts/FacadeStatefulSessionBean' 08:14:31,604 INFO [EjbModule] Undeployed FacadeStatefulSessionBean 08:14:31,612 INFO [MCKernelAbstraction] uninstalling bean: jboss.j2ee:ear=app-client.ear,jar=app-client.jar,name=test-client,service=EJB3 08:14:31,628 INFO [QueueService] Queue[/queue/ex] stopped 08:14:31,629 INFO [QueueService] Queue[/queue/D] stopped 08:14:31,630 INFO [QueueService] Queue[/queue/C] stopped 08:14:31,631 INFO [QueueService] Queue[/queue/B] stopped 08:14:31,632 INFO [QueueService] Queue[/queue/A] stopped 08:14:31,633 INFO [QueueService] Queue[/queue/testObjectMessage] stopped 08:14:31,634 INFO [QueueService] Queue[/queue/testQueue] stopped 08:14:31,635 INFO [TopicService] Topic[/topic/testDurableTopic] stopped 08:14:31,636 INFO [TopicService] Topic[/topic/securedTopic] stopped 08:14:31,638 INFO [TopicService] Topic[/topic/testTopic] stopped 08:14:31,712 WARN [JmsActivation] Failure in jms activation org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@6df0a29b(ra=org.jboss.resource.adapter.jms.JmsResourceAdapter@155ec9f4 destination=queue/A isTopic=false tx=true durable=false reconnect=10 provider=DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=30000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=10) javax.naming.NameNotFoundException: A not bound at org.jnp.server.NamingServer.getBinding(NamingServer.java:542) at org.jnp.server.NamingServer.getBinding(NamingServer.java:550) at org.jnp.server.NamingServer.getObject(NamingServer.java:556) at org.jnp.server.NamingServer.lookup(NamingServer.java:296) at org.jnp.server.NamingServer.lookup(NamingServer.java:270) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:669) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:629) at javax.naming.InitialContext.lookup(InitialContext.java:351) at org.jboss.util.naming.Util.lookup(Util.java:215) at org.jboss.resource.adapter.jms.inflow.JmsActivation.setupDestination(JmsActivation.java:441) at org.jboss.resource.adapter.jms.inflow.JmsActivation.setup(JmsActivation.java:340) at org.jboss.resource.adapter.jms.inflow.JmsActivation$SetupActivation.run(JmsActivation.java:692) at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204) at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) 08:14:31,712 WARN [JmsActivation] Failure in jms activation org.jboss.resource.adapter.jms.inflow.JmsActivationSpec@48cdd17f(ra=org.jboss.resource.adapter.jms.JmsResourceAdapter@155ec9f4 destination=queue/C isTopic=false tx=true durable=false reconnect=10 provider=DefaultJMSProvider user=null maxMessages=1 minSession=1 maxSession=15 keepAlive=30000 useDLQ=true DLQHandler=org.jboss.resource.adapter.jms.inflow.dlq.GenericDLQHandler DLQJndiName=queue/DLQ DLQUser=null DLQMaxResent=10) javax.naming.NameNotFoundException: C not bound at org.jnp.server.NamingServer.getBinding(NamingServer.java:542) at org.jnp.server.NamingServer.getBinding(NamingServer.java:550) at org.jnp.server.NamingServer.getObject(NamingServer.java:556) at org.jnp.server.NamingServer.lookup(NamingServer.java:296) at org.jnp.server.NamingServer.lookup(NamingServer.java:270) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:669) at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:629) at javax.naming.InitialContext.lookup(InitialContext.java:351) at org.jboss.util.naming.Util.lookup(Util.java:215) at org.jboss.resource.adapter.jms.inflow.JmsActivation.setupDestination(JmsActivation.java:441) at org.jboss.resource.adapter.jms.inflow.JmsActivation.setup(JmsActivation.java:340) at org.jboss.resource.adapter.jms.inflow.JmsActivation$SetupActivation.run(JmsActivation.java:692) at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204) at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:260) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595)
The exceptions shown are not what I'm looking for, although they may be the cause of the client container dependencies not being satisfied. They are due to a lack of dependency between the message destination services and the jms invoker for the mdb container.
The question is why there is not an exception about the unsatisfied dependencies of the client container. If the container was started there should have been a "STARTED CLIENT ENC CONTAINER:" message from the org.jboss.ejb3.clientmodule.ClientENCInjectionContainer, which is the bean the Ejb3ClientDeployer registers with the kernel. -
8. Re: AppClientDeployer
starksm64 Oct 29, 2007 3:01 PM (in response to starksm64)The problem is this TODO: http://jira.jboss.com/jira/browse/JBMICROCONT-187
in DeployersImpl.checkComplete. The checks for incomplete deployments needs to scan the entire dependency tree to figure out that the client deployer bean is part of this deployment, and has not been started. -
9. Re: AppClientDeployer
alesj Oct 29, 2007 4:20 PM (in response to starksm64)OK, thanks for pointing it out, will have a crack at it first thing tomorrow.
-
10. Re: AppClientDeployer
starksm64 Oct 29, 2007 6:21 PM (in response to starksm64)If I change the call from the legacy MainDeployer to delegate.checkComplete() from delegate.checkComplete(Deployment deployment), I am seeing an incomplete deployment exception:
15:17:02,931 WARN [MainDeployer] Failed to deploy: file:/home/svn/JBossHead/jboss-head/testsuite/output/lib/app-client.ear org.jboss.deployers.client.spi.IncompleteDeploymentException: Summary of incomplete deployments (SEE PREVIOUS ERRORS FOR DETAILS): *** CONTEXTS MISSING DEPENDENCIES: Name -> Dependency{Required State:Actual State} jboss.j2ee:ear=app-client.ear,jar=app-client.jar,name=test-client,service=EJB3 -> <UNKNOWN>{Installed:** UNRESOLVED Demands 'ejbcts/StatelessSessionHome **} -> <UNKNOWN>{Described:** UNRESOLVED Demands 'jboss.j2ee:ear=app-client.ear,name=StatelessSessionBean,service=EJB3,* **} *** CONTEXTS IN ERROR: Name -> Error <UNKNOWN> -> ** UNRESOLVED Demands 'jboss.j2ee:ear=app-client.ear,name=StatelessSessionBean,service=EJB3,* ** at org.jboss.deployers.plugins.deployers.DeployersImpl.checkComplete(DeployersImpl.java:620) at org.jboss.deployers.plugins.main.MainDeployerImpl.checkComplete(MainDeployerImpl.java:393) at org.jboss.deployment.MainDeployer.deploy(MainDeployer.java:814)
-
11. Re: AppClientDeployer
starksm64 Oct 30, 2007 1:38 AM (in response to starksm64)So to generically use the Ejb3ClientDeployer, it needs to output the BeanMetaData instead of trying to install it so that the resolving deployer can properly setup the dependencies based on the resolved target. Handlers like the EJBHandler are assuming an ejb3 target, which is not correct in general. The current failure of the ClientENCInjectionContainer to start for most deployments is because of invalid dependency creation.
-
12. Re: AppClientDeployer
starksm64 Oct 30, 2007 3:59 PM (in response to starksm64)Ales, the workaround to use the checkIncomplete() call causes too many failures when running multiple unit tests as indicated in:
http://jira.jboss.com/jira/browse/JBAS-4926
Can you look into the JBMICROCONT-187 issue to resolve this. -
13. Re: AppClientDeployer
alesj Oct 30, 2007 7:39 PM (in response to starksm64)"scott.stark@jboss.org" wrote:
Can you look into the JBMICROCONT-187 issue to resolve this.
Re-assigned. ;-)