[JBossWS] - EJB3.0 Client code
by aggarwalanil2004@gmail.com
Hi
I am using EJB3.0 in my project
I wrote code of remote interface and bean
I am using JBoss as application server.
I am not able to run the client code successfully
It is throwing followingexception :
PLZ help me ...
setting IC Propsjavax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:247)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:284)
at javax.naming.InitialContext.lookup(InitialContext.java:351)
at com.client.EJB3Client.main(EJB3Client.java:41)
Below is client code
package com.client;
import java.util.Properties;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
//import javax.ejb.EJB;
import com.ejb3.HelloEJB;
public class EJB3Client {
public static void main(String[] args) {
try {
Context context =new InitialContext();
HelloEJB helloejb = (HelloEJB)context.
lookup("com.ejb3.HelloEJB");
String st = helloejb.sayHello();
System.out.print("client :" + st);
} catch (NamingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3975476#3975476
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3975476
19 years
[JBoss Seam] - Datasource problem
by jimcarrey
Hi,
I am using Seam / Embeddable EJB container with Tomact.
I get a strange error when the Embeddable EJB tries to initialise telling me it has already initialised the datasource. Any ideas appreciated?
Here is the stack trace:
INFO 02-10 12:37:40,000 (Log4JLogger.java:info:94) -starting the embedded EJB
container
WARN 02-10 12:37:40,578 (BeanSchemaBinding.java:init:227) -You should use the
2.0 version of the Microcontainer xml. xmlns='urn:jboss:bean-deployer:2.0'
INFO 02-10 12:37:41,093 (LocalTxDataSource.java:bindConnectionFactory:117) -Bo
und datasource to JNDI name 'java:/refappDS'
java.lang.RuntimeException: java.lang.IllegalStateException: Already installed r
efappDSBootstrap
at org.jboss.ejb3.embedded.EJB3StandaloneBootstrap.deployXmlResource(EJB
3StandaloneBootstrap.java:95)
at org.jboss.seam.core.Ejb.deploy(Ejb.java:58)
at org.jboss.seam.core.Ejb.startup(Ejb.java:39)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:32)
at org.jboss.seam.Component.callComponentMethod(Component.java:1334)
at org.jboss.seam.Component.callCreateMethod(Component.java:1322)
at org.jboss.seam.Component.newInstance(Component.java:1312)
at org.jboss.seam.Component.getInstance(Component.java:1263)
at org.jboss.seam.Component.getInstance(Component.java:1253)
at org.jboss.seam.contexts.Lifecycle.startup(Lifecycle.java:125)
at org.jboss.seam.contexts.Lifecycle.endInitialization(Lifecycle.java:10
4)
at org.jboss.seam.init.Initialization.init(Initialization.java:196)
at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.j
ava:32)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContex
t.java:3692)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4
127)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:73
9)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.jav
a:910)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.j
ava:873)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474
)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1118)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java
:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl
eSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442
)
at org.apache.catalina.core.StandardService.start(StandardService.java:4
50)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:680
)
at org.apache.catalina.startup.Catalina.start(Catalina.java:536)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.IllegalStateException: Already installed refappDSBootstrap
at org.jboss.dependency.plugins.AbstractController.install(AbstractContr
oller.java:149)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean
(AbstractKernelDeployer.java:291)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean
s(AbstractKernelDeployer.java:261)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(Abs
tractKernelDeployer.java:117)
at org.jboss.kernel.plugins.deployment.xml.BeanXMLDeployer.deploy(BeanXM
LDeployer.java:95)
at org.jboss.ejb3.embedded.EJB3StandaloneBootstrap.deployXmlResource(EJB
3StandaloneBootstrap.java:88)
... 41 more
ERROR 02-10 12:37:41,515 (Log4JLogger.java:error:119) -Exception sending contex
t initialized event to listener instance of class org.jboss.seam.servlet.SeamLis
tener
java.lang.RuntimeException: java.lang.IllegalStateException: Already installed r
efappDSBootstrap
at org.jboss.ejb3.embedded.EJB3StandaloneBootstrap.deployXmlResource(EJB
3StandaloneBootstrap.java:95)
at org.jboss.seam.core.Ejb.deploy(Ejb.java:58)
at org.jboss.seam.core.Ejb.startup(Ejb.java:39)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:32)
at org.jboss.seam.Component.callComponentMethod(Component.java:1334)
at org.jboss.seam.Component.callCreateMethod(Component.java:1322)
at org.jboss.seam.Component.newInstance(Component.java:1312)
at org.jboss.seam.Component.getInstance(Component.java:1263)
at org.jboss.seam.Component.getInstance(Component.java:1253)
at org.jboss.seam.contexts.Lifecycle.startup(Lifecycle.java:125)
at org.jboss.seam.contexts.Lifecycle.endInitialization(Lifecycle.java:10
4)
at org.jboss.seam.init.Initialization.init(Initialization.java:196)
at org.jboss.seam.servlet.SeamListener.contextInitialized(SeamListener.j
ava:32)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContex
t.java:3692)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4
127)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:73
9)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.jav
a:910)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.j
ava:873)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474
)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1118)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java
:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl
eSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442
)
at org.apache.catalina.core.StandardService.start(StandardService.java:4
50)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:680
)
at org.apache.catalina.startup.Catalina.start(Catalina.java:536)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: java.lang.IllegalStateException: Already installed refappDSBootstrap
at org.jboss.dependency.plugins.AbstractController.install(AbstractContr
oller.java:149)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean
(AbstractKernelDeployer.java:291)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deployBean
s(AbstractKernelDeployer.java:261)
at org.jboss.kernel.plugins.deployment.AbstractKernelDeployer.deploy(Abs
tractKernelDeployer.java:117)
at org.jboss.kernel.plugins.deployment.xml.BeanXMLDeployer.deploy(BeanXM
LDeployer.java:95)
at org.jboss.ejb3.embedded.EJB3StandaloneBootstrap.deployXmlResource(EJB
3StandaloneBootstrap.java:88)
... 41 more
INFO 02-10 12:37:41,531 (Log4JLogger.java:info:94) -stopping the embedded EJB
container
java.lang.NullPointerException
at org.jboss.seam.core.Ejb.shutdown(Ejb.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:32)
at org.jboss.seam.contexts.Contexts.callDestroyMethod(Contexts.java:211)
at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:189)
at org.jboss.seam.contexts.Lifecycle.endApplication(Lifecycle.java:134)
at org.jboss.seam.servlet.SeamListener.contextDestroyed(SeamListener.jav
a:37)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext
.java:3733)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:43
06)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4
155)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:73
9)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.jav
a:910)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.j
ava:873)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474
)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1118)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java
:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl
eSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442
)
at org.apache.catalina.core.StandardService.start(StandardService.java:4
50)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:680
)
at org.apache.catalina.startup.Catalina.start(Catalina.java:536)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:275)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
WARN 02-10 12:37:41,578 (Log4JLogger.java:warn:109) -Could not destroy compone
nt: org.jboss.seam.core.ejb
java.lang.NullPointerException
at org.jboss.seam.core.Ejb.shutdown(Ejb.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.jboss.seam.util.Reflections.invoke(Reflections.java:13)
at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:32)
at org.jboss.seam.contexts.Contexts.callDestroyMethod(Contexts.java:211)
at org.jboss.seam.contexts.Contexts.destroy(Contexts.java:189)
at org.jboss.seam.contexts.Lifecycle.endApplication(Lifecycle.java:134)
at org.jboss.seam.servlet.SeamListener.contextDestroyed(SeamListener.jav
a:37)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext
.java:3733)
at org.apache.catalina.core.StandardContext.stop(StandardContext.java:43
06)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4
155)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase
.java:759)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:73
9)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:524)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.jav
a:910)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.j
ava:873)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:474
)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1118)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java
:310)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(Lifecycl
eSupport.java:119)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1020)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:718)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1012)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:442
)
at org.apache.catalina.core.StandardService.start(StandardService.java:4
50)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:680
)
at org.apache.catalina.startup.Catalina.start(Catalina.java:536)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3975475#3975475
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3975475
19 years
[Beginners Corner] - Version Problem - Jboss 3.2.5 and jboss 4.0.2
by dineshg
Hi all,
I have developed a very small session bean which has a function and will return a string.
i am using ant 1.6.5 for building the .ear file
I successfully made the ear and deployed it over JBoss 3.2.5 and it deployed successfully
And when i tried to deploy the same ear in JBoss 4.0.2 it has shown me error at the deployment time itself.
Here is the Log File
[org.jboss.deployment.scanner.URLDeploymentScanner] Watch URL for: file:/E:/dinesh/jboss-4.0.2/server/default/deploy/Test.ear -> file:/E:/dinesh/jboss-4.0.2/server/default/deploy/Test.ear
2006-10-02 17:52:42,000 INFO [STDOUT] Error found: java.lang.ClassCastException
2006-10-02 17:52:43,593 INFO [STDOUT] java.lang.ClassCastException
2006-10-02 17:52:43,593 INFO [STDOUT] at com.sun.corba.se.internal.javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:293)
2006-10-02 17:52:43,593 INFO [STDOUT] at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:134)
2006-10-02 17:52:43,593 INFO [STDOUT] at TestBean1.TestServlet.doGet(TestServlet.java:26)
2006-10-02 17:52:43,593 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
2006-10-02 17:52:43,593 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
2006-10-02 17:52:43,593 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
2006-10-02 17:52:43,593 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
2006-10-02 17:52:43,593 INFO [STDOUT] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
2006-10-02 17:52:43,593 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
2006-10-02 17:52:43,593 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
2006-10-02 17:52:43,593 INFO [STDOUT] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
2006-10-02 17:52:43,609 INFO [STDOUT] at java.lang.Thread.run(Thread.java:534)
2006-10-02 17:52:43,609 INFO [STDOUT] java.lang.NullPointerException
2006-10-02 17:52:43,609 INFO [STDOUT] at TestBean1.TestServlet.doGet(TestServlet.java:46)
2006-10-02 17:52:43,609 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
2006-10-02 17:52:43,609 INFO [STDOUT] at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.security.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:856)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
2006-10-02 17:52:43,609 INFO [STDOUT] at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
2006-10-02 17:52:43,609 INFO [STDOUT] at java.lang.Thread.run(Thread.java:534)
Thnk U
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3975474#3975474
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3975474
19 years
[JBoss Seam] - Problem with injection in an jsf action listener
by cristi.ciuc
Hi,
I am working on a project that intends to use a lot of Seam.
Everything worked fine until we had to refactor some of the calls from <h:commandButton id="submit" actionListener="#{...}"...> to <f:actionListener ...> and noticed that the Seam injection doesn't work anymore.
I use Jboss 4.0.4GA and Seam 1.0.1, jsf-facelets 1.1.11, tomahawk 1.1.2
I will attach here snippets of the relevant source code:
First the xhtml page from where you make the call (basically you have some templates in which you have a form with buttons, and an <f:actionListener> that gets called when the user presses a button):
[...]
| <ui:composition template="/templates/crud-page-template-formatted-input.xhtml">
|
| [...ui defines here...]
|
| <ui:define name="saveButtonParams">
| <f:actionListener type="com.nortel.emp.listener.AddRoleListener" />
| </ui:define>
|
| [...]
|
| </ui:composition>
|
| </body>
| </html>
the jsf action listener being called:
@Name("addRoleListener")
| @Stateful
| public class AddRoleListener implements ActionListener{
|
| @In(value = "roleManagement", create = true, required = true)
| private RoleManagementLocal roleManagement;
|
| public void processAction(ActionEvent evt) throws AbortProcessingException {
| [...]
| EmpRole role = new EmpRole();
| [...]
| roleManagement.add(role);
| [...]
| }
|
| @Create
| public void begin() {
| }
|
| /**
| * DOCUMENT ME!
| */
| @Destroy
| @Remove
| public void destroy() {
| }
| [...]
| }
the RoleManagement bean:
@Name("roleManagement")
| @SecurityDomain("emp-mft")
| @Stateless
| public class RoleManagementBean implements RoleManagementLocal, Serializable {
| private static final long serialVersionUID = 6125466770660833929L;
| private static final transient Logger logger = LoggerFactory.getDebugLogger(RoleManagementBean.class);
| private static SecurityDataService securityDataService = null;
| @In(value = "userManagement", create = true, required = true)
| private UserManagementLocal userManagement;
| private ResourceBundle errors = ResourceBundle.getBundle("Errors");
|
| [...]
| }
The problem is that when roleManagement.add(role); (in AddRoleListener) is called, a null pointer exception is thrown (roleManagement is not injected, for what I can tell).
In console I get:
| [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: Start RESTORE_VIEW(1)
| 13:26:46,774 DEBUG [TabManager] Getting tab manager instance: 18510589
| 13:26:46,775 DEBUG [TabManager] Getting tab manager instance: 18510589
| 13:26:46,776 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: End RESTORE_VIEW(1)
| 13:26:46,777 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: Start APPLY_REQUEST_VALUES(2)
| 13:26:46,778 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: End APPLY_REQUEST_VALUES(2)
| 13:26:46,779 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: Start PROCESS_VALIDATIONS(3)
| 13:26:46,780 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: End PROCESS_VALIDATIONS(3)
| 13:26:46,780 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: Start UPDATE_MODEL_VALUES(4)
| 13:26:46,781 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: End UPDATE_MODEL_VALUES(4)
| 13:26:46,782 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: Start INVOKE_APPLICATION(5)
| 13:26:46,782 INFO [debugLog] com.nortel.emp.listener.AppPhaseListener: afterPhase: End INVOKE_APPLICATION(5)
| 13:26:46,783 ERROR [[Faces Servlet]] Servlet.service() for servlet Faces Servlet threw exception
| java.lang.NullPointerException
| at com.nortel.emp.listener.AddRoleListener.processAction(AddRoleListener.java:55)
| at javax.faces.event.ActionEvent.processListener(ActionEvent.java:48)
| at javax.faces.component.UIComponentBase.broadcast(UIComponentBase.java:484)
| at javax.faces.component.UICommand.broadcast(UICommand.java:75)
| at javax.faces.component.UIViewRoot._broadcastForPhase(UIViewRoot.java:94)
| at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:168)
| at org.apache.myfaces.lifecycle.LifecycleImpl.invokeApplication(LifecycleImpl.java:343)
| at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:86)
| at javax.faces.webapp.FacesServlet.service(FacesServlet.java:137)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:144)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
| at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:202)
| at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
| at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
| at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
| at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:175)
| at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:524)
| at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:74)
| at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
| at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
| at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
| at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
| at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
| at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
| at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
| at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:112)
| at java.lang.Thread.run(Thread.java:595)
Note that when using in RoleManagementBean
@In(value = "userManagement", create = true, required = true)
| private UserManagementLocal userManagement;
|
everything is fine.
I am really stuck. I have tried adding interceptors annotation like
@Interceptors(SeamInterceptor.class)
| @Intercept(InterceptionType.AFTER_RESTORE_VIEW)
to the AddRoleListener bean (hoping to force Seam to intercept the action listener) with no result whatsoever.
For what it seems the call to the ActionListener doesn't get intercepted by Seam. If, instead of the @In annotation, I use @EJB I still get the null pointer exception.
So, what do I do wrong? From the Seam documentation :
anonymous wrote : Seam even encourages you to use session beans as JSF action listeners!
Thanks in advance,
Cristi
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3975473#3975473
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3975473
19 years