Accessing Remote EJBs

I am trying to access an EJB on a remote server using the following code:
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,
        "com.sun.jndi.cosnaming.CNCtxFactory");
env.put(Context.PROVIDER_URL,
        "iiop://190.30.123.34:1050");
InitialContext initial = new InitialContext(env);
Context environment (Context)initial.lookup("java:comp/env");
Object ref = environment.lookup("ejb/lands.mc.bus.TopoMap");
home = (TopoMapHome) PortableRemoteObject.narrow(ref, TopoMapHome.class);I have the following entry in my web.xml:
<ejb-ref>
<ejb-ref-name>ejb/lands.mc.bus.TopoMap</ejb-ref-name>
<ejb-ref-type>Entity</ejb-ref-type>
<home>lands.mc.bus.TopoMapHome</home>
<remote>lands.mc.bus.TopoMap</remote>
</ejb-ref>But when ever i perform the environment lookup, i get the following error:
javax.naming.NamingException: Cannot create resource instance
When i print out the bindings, the TopoMap binding is present.
Can anyone suggest what i might be doing wrong?
Thanks
toby

Tried that, gives me this error:
javax.naming.NameNotFoundException: Name lands.mc.bus.TopoMap is not bound in this ContextIf i change
env.put(Context.PROVIDER_URL,"iiop://190.30.123.34:1050");To a non existent URL, tells me it cant connect to the ORB, so its definitly connecting properly. I also noticed that when i print out the bindings, it prints out only those that are in my web.xml file for the tomcat server, not the bindings that are on 190.30.123.34 (J2EE server).
Any other suggestions?
Thanks,
Toby

Similar Messages

  • Error during JNDI lookup Accessing Remote EJB (access to web service restricted using declarative security model)

    Hello everyone,
    I developed a Web Service prototype accessing remote EJB using the EJB
    control with special syntax in the jndi-name attribute: @jws:ejb
    home-jndi-name="t3://10.10.245.70:7131/AccountDelegatorEJB"
    Everything works fine, but I get an error when I restrict access to my web
    service with a declarative security model by implementing steps provided in
    help doc:
    - Define the web resource you wish to protect
    - Define which security role is required to access the web resource
    - Define which users are granted the required security role
    - Configure WebLogic Server security for my web service(Compatibility
    Security/Users)
    I launch the service by entering the address in a web browser. When prompted
    to accept the digital certificate, click Yes, when prompted for network
    authentication information, enter username and password, navigate to the
    Test Form tab of Test View, invoke the method by clicking the button and I
    get the following exception:
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookup failed for
    name:t3://10.10.245.70:7131/AccountDelegatorEJB]</faultstring>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during JNDI
    lookup from jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookup failed
    for name:t3://10.10.245.70:7131/AccountDelegatorEJB] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260) at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetSecure.retrieveVisaHistoryTxn(GetSecure.jws:64) </jwErrorDetail>
    </detail>
    </error>
    I have a simple Hello method as well in my WebService (which is also
    restricted) and it works fine, but remote EJB access doesn't. I tested my
    prototype on Weblogic 7.2 and 8.1 platforms - same result.
    Is that a bug or I am missing some additional configuration in order to get
    that working. Has anyone seen similar behavior? Is there a known resolution?
    Or a suggested way to work around the problem?
    Thank you.
    Andre

    Andre,
    It would be best if this issue is handled as an Eval Support case. Please
    BEA Customer Support at http://support.beasys.com along with the required
    files, and request that an Eval support case be created for this issue.
    Thanks
    Raj Alagumalai
    WebLogic Workshop Support
    "Andre Shergin" <[email protected]> wrote in message
    news:[email protected]...
    Anurag,
    I removed "t3", still get an error but a different one (Unable to create
    InitialContext:null):
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi://secuser1:[email protected]:7131/AccountDelegatorEJB[Unable to
    create InitialContext:null]</faultstring>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during JNDI
    lookup from
    jndi://secuser1:[email protected]:7131/AccountDelegatorEJB[Unable to
    create InitialContext:null] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260) at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetVisaHistoryTransactions.getVisaHistoryTxn(GetVisaHistoryTransactions
    .jws:67) </jwErrorDetail>
    </detail>
    </error>
    Note: inter-domain communication is configured properly. The Web Service to
    remote EJB works fine without a declarative security.
    Any other ideas?
    Thank you for your help.
    Andre
    "Anurag" <[email protected]> wrote in message
    news:[email protected]...
    Andre,
    It seems you are using the URL
    jndi:t3://secuser1:[email protected]:7131/AccountDelegatorEJB
    whereas you should not be specifying the "t3:" protocol.
    The URL should be like
    jndi://secuser1:[email protected]:7131/AccountDelegatorEJB
    Please do let me know if you see any issues with this.
    Note that this will only allow you to access remote EJBs in the same WLS
    domain. For accessing EJBs on another domain, you need to configure
    inter-domain communication by
    following a few simple steps as mentioned at
    http://e-docs.bea.com/wls/docs81/ConsoleHelp/jta.html#1106135. This link has
    been provided in the EJB Control Workshop documentation.
    Regards,
    Anurag
    "Andre Shergin" <[email protected]> wrote in message
    news:[email protected]...
    Raj,
    I tried that before, it didn't help. I got similar error message:
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi:t3://secuser1:[email protected]:7131/AccountDelegatorEJB[Lookup
    failed for
    name:t3://secuser1:[email protected]:7131/AccountDelegatorEJB]</faultstr
    ing>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during JNDI
    lookup from
    jndi:t3://secuser1:[email protected]:7131/AccountDelegatorEJB[Lookup
    failed for
    name:t3://secuser1:[email protected]:7131/AccountDelegatorEJB] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260) at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetSecure.retrieveVisaHistoryTxn(GetSecure.jws:64) </jwErrorDetail>
    </detail>
    </error>
    Anything else should I try?
    P.S. AccountDelegatorEJB, the remote EJB my Web Service calls is NOTaccess
    restricted.
    I hope there is a solution.
    Thanks,
    Andre
    "Raj Alagumalai" <[email protected]> wrote in message
    news:[email protected]...
    Andre,
    Can you try using the following url with username and password
    jndi://username:password@host:7001/my.resource.jndi.object ?
    once you add webapp level security, the authenticated is the user who
    invokes the EJB.
    http://e-docs.bea.com/workshop/docs81/doc/en/workshop/guide/controls/ejb/con
    CreatingANewEJBControl.html?skipReload=true
    has more info on using remote EJB's.
    Hope this helps.
    Thanks
    Raj Alagumalai
    WebLogic Workshop Support
    "Alla Resnik" <[email protected]> wrote in message
    news:[email protected]...
    Hello everyone,
    I developed a Web Service prototype accessing remote EJB using the EJB
    control with special syntax in the jndi-name attribute: @jws:ejb
    home-jndi-name="t3://10.10.245.70:7131/AccountDelegatorEJB"
    Everything works fine, but I get an error when I restrict access to my
    web
    service with a declarative security model by implementing steps
    provided
    in
    help doc:
    - Define the web resource you wish to protect
    - Define which security role is required to access the web resource
    - Define which users are granted the required security role
    - Configure WebLogic Server security for my web service(Compatibility
    Security/Users)
    I launch the service by entering the address in a web browser. Whenprompted
    to accept the digital certificate, click Yes, when prompted for
    network
    authentication information, enter username and password, navigate tothe
    Test Form tab of Test View, invoke the method by clicking the buttonand
    I
    get the following exception:
    <error>
    <faultcode>JWSError</faultcode>
    <faultstring>Error during JNDI lookup from
    jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookup failed for
    name:t3://10.10.245.70:7131/AccountDelegatorEJB]</faultstring>
    <detail>
    <jwErrorDetail> weblogic.jws.control.ControlException: Error during
    JNDI
    lookup from jndi:t3://10.10.245.70:7131/AccountDelegatorEJB[Lookupfailed
    for name:t3://10.10.245.70:7131/AccountDelegatorEJB] at
    weblogic.knex.control.EJBControlImpl.acquireResources(EJBControlImpl.java:27
    8) at
    weblogic.knex.context.JwsInternalContext.acquireResources(JwsInternalContext
    .java:220) at
    weblogic.knex.control.ControlHandler.invoke(ControlHandler.java:260)at
    ibas.AccountControl.getTransactionHistory(AccountControl.ctrl) at
    ibas.GetSecure.retrieveVisaHistoryTxn(GetSecure.jws:64)</jwErrorDetail>
    </detail>
    </error>
    I have a simple Hello method as well in my WebService (which is also
    restricted) and it works fine, but remote EJB access doesn't. I testedmy
    prototype on Weblogic 7.2 and 8.1 platforms - same result.
    Is that a bug or I am missing some additional configuration in order
    to
    get
    that working. Has anyone seen similar behavior? Is there a knownresolution?
    Or a suggested way to work around the problem?
    Thank you.
    Andre

  • Security issue to access remote ejbs, URGENT!!! please and thanks.

    Hi gurus:
    I have questions for you. I need to access remote ejbs. the ejb(beans) have been
    deployed on remote machine. I have helper class file to do JNDI lookup to point
    the machine and find it.
    I have local machine to have all of home interfaces, remote interfaces and stub
    classes and common classes. I have local jsp and config weblogic-web.xml to allow
    test user to access.
    Sometimes fine but got the following message and error from my local machine.
    I have no clue about that. Is any other issue that remote machine have security
    to limit clients to access beans. Because remote wl server startup as system/weblogic.
    If my local machine startup as system/weblogic too. It has no problem at all.
    This doesn't make sense for my local machine has to have same system's password
    as remote machine. Should have some issues to limit clients to access remote beans.
    Thank you for any helps and suggestions in advance.
    Steven.
    ####<Jun 7, 2001 10:34:25 AM CDT> <Error> <HTTP> <stevenzhu> <myserver> <ExecuteThread-14>
    <springbow> <> <101020> <[WebAppServletContext(8365803,public_html)] Servlet failed
    with Exception>
    java.lang.SecurityException: Authentication for user test denied in realm wl_realm
    at weblogic.rmi.internal.AbstractOutboundRequest.sendReceive(AbstractOutboundRequest.java:90)
    at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:247)
    at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java:225)
    at weblogic.jndi.internal.ServerNamingNode_WLStub.lookup(ServerNamingNode_WLStub.java:121)
    at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:323)
    at com.sprint.common.util.EJBHelper.getHomeInterface(EJBHelper.java:172)
    at com.sprint.common.util.EJBHelper.getOrganizationSLHome(EJBHelper.java:122)
    at com.sprint.common.organization.OrganizationBean.getOrganizationHome(OrganizationBean.java:290)
    at com.sprint.common.organization.OrganizationBean.getOrganizationRemote(OrganizationBean.java:315)
    at com.sprint.common.organization.OrganizationBean.findEmployee(OrganizationBean.java:107)
    at jsp_servlet._ehr._vieworganizationalhierarchy._jspService(_vieworganizationalhierarchy.java:173)
    at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
    at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:208)
    at weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletContext.java:1127)
    at weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java:1529)
    at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)

    well, if we post in other threads, they tell me that it is ARD and server technology. If you try to post back to my mac in the normal threads about Leopard, they point us to this thread.
    It seems that a lot of people are frantically looking for someone who can explain in plain english how to do the remote desktop - is remote desktop the same technology as back to my mac?
    Extremely frustrating for people like me who don't have unix or programming language experience... We choose for mac because we wanted user friendlyness... What a joke!

  • Using service Locator pattern to dynamically access remote EJBs

    Hi All,
    Please help to guide me how I can use a service locator to retrieve a remote object (residing on another application but on same domain) .
    I do not want to use Dependency Injection since I want to dynamically discover them ( there are many implementations of same interface (POJO)). Each EJB implementation implements its own remote/local interface that extends this global POJO interface.
    I have two J2ee-Applications on same domain. J2EE-Application 1 has an EJB module (EJB Module 1) that intends to access an EJB Module (EJB Module 2) in J2EE-Application 2. Following observations:
    1. Dependency Injection fails if (include the EJB Module 2 jar in J2EE-Application 1). Reason App Server complains the EJB has been deployed (Deployment fails)
    2. Dependency Injection works if (exclude the EJB Module 2 jar in J2EE-Application 1) and include the Remote Interface in EJB Module 1(J2EE-Application 1).Positive Observation (Deployment success and DI also success)
    3.Using Service Locator to retrieve the remote object if (exclude the EJB Module 2 jar in J2EE-Application 1) and include the Remote Interface in EJB Module 1(J2EE-Application 1). Negative and Positive Observation.
    Positive Observation: Using dependency injection I can still retrieve the Remote Object
    Another Positive: The Service Locator remote lookup to another Bean in same Application but different EJB Module is successful.
    Negative Observation:
    The Service Locator lookup to this same remote object with Successful Dependency Injection fails (An Ejb in a different application).
    Can't retrieve the Remote Object with Service Locator. Message from Server:.
    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.
    Thanks in advance

    "I do not want to use Dependency Injection since I want to dynamically discover them ( there are many implementations of same interface (POJO))"
    If you're calling ejbs from other ejbs or servlets, the same could probably be acomplished by using dependency injection (@EJB) in a number of instance variables typed with different remote/local interfaces or even with different beanName attributes (for when more than one bean implements the same managed interface in the same app - not sure how it works outside the same jee app...) , and dinamically selecting one of them; or encapsulating those injected variables into a stateless ejb as your service locator to make them accessible from POJOs too (which, due to concurrent acess, wouldn't work for statefull ejbs references...).
    Anyway, using the jndi lookup service locator pattern seems ok in this case.
    What doesn't seem ok, given the nature of the error for the negative observation - jndi context initialization - is that
    Another Positive: The Service Locator remote lookup to another Bean in same Application but different EJB Module is successful.
    Can you check your code and reconfirm that you're using the same context initialization code for both the positive and negative observations ?

  • Access remote ejb in oc4j

    I use oc4j in jdeveloper 10G in access a remote EJB using
    sample java client both of EJB and java client on MY COMPUTER
    AS SERVER I THINK I HAVE PROBLEM IN SETTING CLASS PATHS
    I HAVE DOWNLOAD J2EE SDK VER 1.3.1 AND I ASSIGN MY CLASSPATHS
    AS FOLLOWS:
    C:\java_course1\jdbc\lib\classes12.jar;C:\java_course1\jdbc\lib\nls_charset12.jar; c:\java_course1\j2ee\home\lib;c:\java_course1\lib\ ; C:\J2Sdkee1.3.1\lib\j2ee.jar
    java_course1 is folder of jdeveloper
    j2Sdkee.1.3.1 is J2EE SDK VER 1.3.1
    the code i have written in java client
    env.put(Context.INITIAL_CONTEXT_FACTORY,"RMIInitialContextFactory");
    env.put(Context.SECURITY_PRINCIPAL, "admin");
    env.put(Context.SECURITY_CREDENTIALS, "welcome");
    env.put(Context.PROVIDER_URL, "ormi://localhost:23893/current-workspace-app");
    Context context = new javax.naming.InitialContext(env);
    EmpHome empHome = (EmpHome)PortableRemoteObject.narrow(context.lookup("EmpHome"), EmpHome.class);
    I get the following error message
    javax.naming.NoInitialContextException: Cannot instantiate class: RMIInitialContextFactory [Root exception is java.lang.ClassNotFoundException: RMIInitialContextFactory]
    Is Someting is missed in class pathes or should i copy j2ee.jar file from
    C:\J2Sdkee1.3.1\lib\j2ee.jar to oc4j folder

    Thank you for useful information i found in site
    But if you help me if defintions of class passes i have assigned and
    show in my message are correct or I have missed something weather
    in class paths or environment variables
    Again Thanks a lot

  • Unable to access  Remote EJB with jndi.properties in classpath

    Hi
    I'm trying to use remote interfaces with my adf web layer.
    Created remote datacontrol for my model part and my model EAR is deployed in another Oracle App Server instance(S1).
    My web layer is deployed in another Oracle App Server(S2). My page def uses the remote interfaces.
    Following are the files which are needed to have ejb ref entry.
    ---- orion-web.xml ----
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <orion-web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:noNamespaceSchemaLocation="http://xmlns.oracle.com/oracleas/schema/orion-web-10_0.xsd"
    schema-major-version="10" schema-minor-version="0"
    servlet-webdir="/servlet/" >
    <ejb-ref-mapping name="MySessionEJB" location="MySessionEJB"
    remote-server-ref="true"
    jndi-properties-file="jndi.properties"></ejb-ref-mapping>
    </orion-web-app>
    --- web.xml ---
    <?xml version = '1.0' encoding = 'windows-1252'?>
    <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
    version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee">
    <description>Empty web.xml file for Web Application</description>
    <context-param>
    <param-name>javax.faces.STATE_SAVING_METHOD</param-name>
    <param-value>client</param-value>
    </context-param>
    <context-param>
    <param-name>oracle.adf.view.faces.USE_APPLICATION_VIEW_CACHE</param-name>
    <param-value>true</param-value>
    </context-param>
    <context-param>
    <param-name>CpxFileName</param-name>
    <param-value>com.home.view.DataBindings</param-value>
    </context-param>
    <filter>
    <filter-name>PCF</filter-name>
    <filter-class>oracle.webcache.adf.filter.FacesPageCachingFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfBindings</filter-name>
    <filter-class>oracle.adf.model.servlet.ADFBindingFilter</filter-class>
    </filter>
    <filter>
    <filter-name>adfFaces</filter-name>
    <filter-class>oracle.adf.view.faces.webapp.AdfFacesFilter</filter-class>
    </filter>
    <filter-mapping>
    <filter-name>PCF</filter-name>
    <servlet-name>Faces Servlet</servlet-name>
    <dispatcher>REQUEST</dispatcher>
    <dispatcher>FORWARD</dispatcher>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfBindings</filter-name>
    <url-pattern>*.jspx</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <url-pattern>*.jsp</url-pattern>
    </filter-mapping>
    <filter-mapping>
    <filter-name>adfFaces</filter-name>
    <url-pattern>*.jspx</url-pattern>
    </filter-mapping>
    <servlet>
    <servlet-name>Faces Servlet</servlet-name>
    <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>AFCStatsServlet</servlet-name>
    <servlet-class>oracle.webcache.adf.servlet.AFCStatsServlet</servlet-class>
    <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet>
    <servlet-name>resources</servlet-name>
    <servlet-class>oracle.adf.view.faces.webapp.ResourceServlet</servlet-class>
    </servlet>
    <servlet-mapping>
    <servlet-name>Faces Servlet</servlet-name>
    <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <servlet-mapping>
    <servlet-name>resources</servlet-name>
    <url-pattern>/adf/*</url-pattern>
    </servlet-mapping>
    <session-config>
    <session-timeout>1</session-timeout>
    </session-config>
    <mime-mapping>
    <extension>html</extension>
    <mime-type>text/html</mime-type>
    </mime-mapping>
    <mime-mapping>
    <extension>txt</extension>
    <mime-type>text/plain</mime-type>
    </mime-mapping>
    <welcome-file-list>
    <welcome-file>login.jsp</welcome-file>
    </welcome-file-list>
    <jsp-config/>
    <ejb-ref>
    <ejb-ref-name>MySessionEJB</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <remote>com.home.model.MySessionEJBRemote</remote>
    <ejb-link>MySessionEJB</ejb-link>
    </ejb-ref>
    </web-app>
    and this jndi.properties file in placed in the WEB-INF/classes folder.
    java.naming.factory.initial=oracle.j2ee.rmi.RMIInitialContextFactory
    java.naming.security.principal=oc4jadmin
    java.naming.security.credentials=welcome123
    java.naming.provider.url=opmn:ormi://S1:6003:Test_Instance/test-ejb
    The same web application if I run it in Jdeveloper its able to open the welcome.jspx which calls the remote EJB method on load. But when I deploy it Oracle Server 10.1.3.1.0 the error "500 Internal Server Error" shows up and in log file following exception can be found
    avax.faces.el.EvaluationException: oracle.jbo.JboException: JBO-29000: Unexpected exception caught: oracle.jbo.JboException, msg
    =JBO-29000: Unexpected exception caught: javax.naming.NameNotFoundException, msg=MySessionEJB not found
    Seems like the jndi properties is ignored during the Context creation for lookup.
    Please advice where I'm missing the configuration.

    http://docs.sun.com/source/819-0079/dgjndi.html

  • Unable to access remote EJB object on different server

    I have deployed an EJB module on one server. I have been able to access the entity beans on this server from a standalone java client (on a different machine) using the CORBA Interopable Naming Syntax. Using this syntax
    corbaname:iiop:<hostname>:port#<jndi-name>
    However, when I deploy another EJB module on a separate server I am unable to access the objects held on the original server. I am using the same syntax as the java client.
    We are using Sun Application Server to deploy the modules. The error held in the server log is below. Can someone help with this. Does the Sun Application Server prevent connection to remote objects by default?
    [#|2005-12-09T17:39:55.703+0000|SEVERE|sun-appserver-pe8.1_02|javax.enterprise.resource.corba._DEFAULT_.rpc.transport|_ThreadID=11;|"IOP00410216: (COMM_FAILURE) Unable to create IIOP listener on the specified host/port: all interfaces/3700"
    org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 216 completed: No
         at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2661)
         at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2681)
         at com.sun.corba.ee.impl.transport.SocketOrChannelAcceptorImpl.initialize(SocketOrChannelAcceptorImpl.java:167)
         at com.sun.corba.ee.impl.transport.CorbaTransportManagerImpl.getAcceptors(CorbaTransportManagerImpl.java:207)
         at com.sun.corba.ee.impl.transport.CorbaTransportManagerImpl.addToIORTemplate(CorbaTransportManagerImpl.java:224)
         at com.sun.corba.ee.spi.oa.ObjectAdapterBase.initializeTemplate(ObjectAdapterBase.java:104)
         at com.sun.corba.ee.impl.oa.toa.TOAImpl.<init>(TOAImpl.java:78)
         at com.sun.corba.ee.impl.oa.toa.TOAFactory.getTOA(TOAFactory.java:65)
         at com.sun.corba.ee.impl.orb.ORBImpl.connect(ORBImpl.java:1536)
         at com.sun.corba.ee.spi.presentation.rmi.StubAdapter.connect(StubAdapter.java:164)
         at com.sun.corba.ee.impl.orbutil.ORBUtility.connectAndGetIOR(ORBUtility.java:825)
         at com.sun.corba.ee.impl.orb.ORBImpl.getFVDCodeBaseIOR(ORBImpl.java:901)
         at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.addServiceContexts(CorbaClientRequestDispatcherImpl.java:737)
         at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(CorbaClientRequestDispatcherImpl.java:227)
         at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.request(CorbaClientDelegateImpl.java:127)
         at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.is_a(CorbaClientDelegateImpl.java:244)
         at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:112)
         at org.omg.CosNaming.NamingContextHelper.narrow(NamingContextHelper.java:69)
         at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.java:345)
         at com.sun.jndi.cosnaming.CNCtx.initUsingCorbanameUrl(CNCtx.java:321)
         at com.sun.jndi.cosnaming.CNCtx.initUsingUrl(CNCtx.java:247)
         at com.sun.jndi.cosnaming.CNCtx.createUsingURL(CNCtx.java:85)
         at com.sun.jndi.url.iiop.iiopURLContextFactory.getUsingURLIgnoreRest(iiopURLContextFactory.java:56)
         at com.sun.jndi.url.iiop.iiopURLContext.getRootURLContext(iiopURLContext.java:44)
         at com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:182)
         at javax.naming.InitialContext.lookup(InitialContext.java:351)
         at com.ppl.services.ServiceLocator.lookup(ServiceLocator.java:47)
         at com.ppl.services.ServiceLocator.getRemoteHome(ServiceLocator.java:74)
         at com.ppl.services.ServiceLocator.getRemoteUSRRoutinesHome(ServiceLocator.java:134)
         at com.ppl.business.LoginBusiness.isUserServiceAvailable(LoginBusiness.java:50)
         at org.apache.jsp.testEJBComponents_jsp._jspService(testEJBComponents_jsp.java:72)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:105)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:336)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:251)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403)
         at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)
    Caused by: java.lang.Error: Untranslated exception
         at sun.nio.ch.Net.translateToSocketException(Net.java:63)
         at sun.nio.ch.Net.translateException(Net.java:79)
         at sun.nio.ch.Net.translateException(Net.java:85)
         at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:61)
         at com.sun.enterprise.server.ss.ASServerSocket.bind(ASServerSocket.java:258)
         at com.sun.enterprise.server.ss.ASServerSocket.bind(ASServerSocket.java:231)
         at com.sun.enterprise.iiop.IIOPSSLSocketFactory.createServerSocket(IIOPSSLSocketFactory.java:289)
         at com.sun.corba.ee.impl.transport.SocketOrChannelAcceptorImpl.initialize(SocketOrChannelAcceptorImpl.java:160)
         ... 62 more
    Caused by: java.net.SocketException: Already bound
         at sun.nio.ch.Net.translateToSocketException(Net.java:49)
         ... 69 more
    Caused by: sun.nio.ch.AlreadyBoundException
         at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:114)
         at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
         ... 66 more
    |#]
    [#|2005-12-09T17:39:55.703+0000|WARNING|sun-appserver-pe8.1_02|javax.enterprise.resource.corba._INITIALIZING_.rpc.presentation|_ThreadID=11;|"IOP02310202: (OBJ_ADAPTER) Error in connecting servant to ORB"
    org.omg.CORBA.OBJ_ADAPTER: vmcid: SUN minor code: 202 completed: No
         at com.sun.corba.ee.impl.logging.ORBUtilSystemException.orbConnectError(ORBUtilSystemException.java:8276)
         at com.sun.corba.ee.impl.logging.ORBUtilSystemException.orbConnectError(ORBUtilSystemException.java:8294)
         at com.sun.corba.ee.impl.orb.ORBImpl.connect(ORBImpl.java:1538)
         at com.sun.corba.ee.spi.presentation.rmi.StubAdapter.connect(StubAdapter.java:164)
         at com.sun.corba.ee.impl.orbutil.ORBUtility.connectAndGetIOR(ORBUtility.java:825)
         at com.sun.corba.ee.impl.orb.ORBImpl.getFVDCodeBaseIOR(ORBImpl.java:901)
         at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.addServiceContexts(CorbaClientRequestDispatcherImpl.java:737)
         at com.sun.corba.ee.impl.protocol.CorbaClientRequestDispatcherImpl.beginRequest(CorbaClientRequestDispatcherImpl.java:227)
         at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.request(CorbaClientDelegateImpl.java:127)
         at com.sun.corba.ee.impl.protocol.CorbaClientDelegateImpl.is_a(CorbaClientDelegateImpl.java:244)
         at org.omg.CORBA.portable.ObjectImpl._is_a(ObjectImpl.java:112)
         at org.omg.CosNaming.NamingContextHelper.narrow(NamingContextHelper.java:69)
         at com.sun.jndi.cosnaming.CNCtx.setOrbAndRootContext(CNCtx.java:345)
         at com.sun.jndi.cosnaming.CNCtx.initUsingCorbanameUrl(CNCtx.java:321)
         at com.sun.jndi.cosnaming.CNCtx.initUsingUrl(CNCtx.java:247)
         at com.sun.jndi.cosnaming.CNCtx.createUsingURL(CNCtx.java:85)
         at com.sun.jndi.url.iiop.iiopURLContextFactory.getUsingURLIgnoreRest(iiopURLContextFactory.java:56)
         at com.sun.jndi.url.iiop.iiopURLContext.getRootURLContext(iiopURLContext.java:44)
         at com.sun.jndi.toolkit.url.GenericURLContext.lookup(GenericURLContext.java:182)
         at javax.naming.InitialContext.lookup(InitialContext.java:351)
         at com.ppl.services.ServiceLocator.lookup(ServiceLocator.java:47)
         at com.ppl.services.ServiceLocator.getRemoteHome(ServiceLocator.java:74)
         at com.ppl.services.ServiceLocator.getRemoteUSRRoutinesHome(ServiceLocator.java:134)
         at com.ppl.business.LoginBusiness.isUserServiceAvailable(LoginBusiness.java:50)
         at org.apache.jsp.testEJBComponents_jsp._jspService(testEJBComponents_jsp.java:72)
         at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:105)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:336)
         at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
         at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:251)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:860)
         at sun.reflect.GeneratedMethodAccessor60.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
         at java.security.AccessController.doPrivileged(Native Method)
         at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
         at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
         at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
         at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
         at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
         at java.security.AccessController.doPrivileged(Native Method)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:161)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
         at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
         at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
         at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:185)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:653)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:534)
         at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doTask(ProcessorTask.java:403)
         at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:55)
    Caused by: org.omg.CORBA.COMM_FAILURE: vmcid: SUN minor code: 216 completed: No
         at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2661)
         at com.sun.corba.ee.impl.logging.ORBUtilSystemException.createListenerFailed(ORBUtilSystemException.java:2681)
         at com.sun.corba.ee.impl.transport.SocketOrChannelAcceptorImpl.initialize(SocketOrChannelAcceptorImpl.java:167)
         at com.sun.corba.ee.impl.transport.CorbaTransportManagerImpl.getAcceptors(CorbaTransportManagerImpl.java:207)
         at com.sun.corba.ee.impl.transport.CorbaTransportManagerImpl.addToIORTemplate(CorbaTransportManagerImpl.java:224)
         at com.sun.corba.ee.spi.oa.ObjectAdapterBase.initializeTemplate(ObjectAdapterBase.java:104)
         at com.sun.corba.ee.impl.oa.toa.TOAImpl.<init>(TOAImpl.java:78)
         at com.sun.corba.ee.impl.oa.toa.TOAFactory.getTOA(TOAFactory.java:65)
         at com.sun.corba.ee.impl.orb.ORBImpl.connect(ORBImpl.java:1536)
         ... 56 more
    Caused by: java.lang.Error: Untranslated exception
         at sun.nio.ch.Net.translateToSocketException(Net.java:63)
         at sun.nio.ch.Net.translateException(Net.java:79)
         at sun.nio.ch.Net.translateException(Net.java:85)
         at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:61)
         at com.sun.enterprise.server.ss.ASServerSocket.bind(ASServerSocket.java:258)
         at com.sun.enterprise.server.ss.ASServerSocket.bind(ASServerSocket.java:231)
         at com.sun.enterprise.iiop.IIOPSSLSocketFactory.createServerSocket(IIOPSSLSocketFactory.java:289)
         at com.sun.corba.ee.impl.transport.SocketOrChannelAcceptorImpl.initialize(SocketOrChannelAcceptorImpl.java:160)
         ... 62 more
    Caused by: java.net.SocketException: Already bound
         at sun.nio.ch.Net.translateToSocketException(Net.java:49)
         ... 69 more
    Caused by: sun.nio.ch.AlreadyBoundException
         at sun.nio.ch.ServerSocketChannelImpl.bind(ServerSocketChannelImpl.java:114)
         at sun.nio.ch.ServerSocketAdaptor.bind(ServerSocketAdaptor.java:59)
         ... 66 more
    |#]

    http://docs.sun.com/source/819-0079/dgjndi.html

  • Accessing remote EJBs while debugging using the Embedded Application Server

    I'm trying to configure to debug a multi-tier application (servlets + EJBs) where a servlet accesses EJBs set up on a second OC4J application server. I've set up rmi.xml in the embedded application server to reference my second application server by adding the line.
    <server host="127.0.0.1" username="admin" port="23791" password="password"/>
    When I run the embedded application server it seems to hang, with the stack in
    the following state:
    OC4J main()
    OC4J launchOC4JCommandLine()
    ApplicationServer launchCommandLine()
    Thread join()
    Thread join(0)
    Object wait(0)
    The following exception is generated on the second application server
    C:\Program Files\Oracle\JDeveloper9i\j2ee\home>java -jar oc4j.jar
    Oracle9iAS (9.0.2.0.0) Containers for J2EE initialized
    java.lang.NullPointerException
    java.lang.ClassLoader com.evermind.server.rmi.RMIInputStream.getClassLoa
    der()
    java.lang.Class com.evermind.server.rmi.RMIInputStream.resolveClass(java
    .io.ObjectStreamClass)
    java.io.ObjectStreamClass java.io.ObjectInputStream.inputClassDescriptor
    java.lang.Object java.io.ObjectInputStream.readObject(boolean)
    java.lang.Object java.io.ObjectInputStream.readObject()
    int java.io.ObjectInputStream.inputObject(boolean)
    java.lang.Object java.io.ObjectInputStream.readObject(boolean)
    java.lang.Object java.io.ObjectInputStream.readObject()
    void com.evermind.server.rmi.RMIConnection.handleBindObject()
    void com.evermind.server.rmi.RMIConnection.run()
    void com.evermind.util.ThreadPoolThread.run()
    Has anyone got any ideas what is happening here and how I can fix it?
    Thanks,
    Mark.

    This is an OC4J question. Try posting your message to the Products > Application Server > J2EE forum. Someone there should be able to answer your question.

  • Problem in  Accessing the EJB

    I want to access remote EJB from my Portal Service.
    the EJB and the portal Service run on a separated machines.
    here is what i wrote:
    Properties properties = new Properties();
    properties.put(Context.INITIAL_CONTEXT_FACTORY,
    "com.sap.engine.services.jndi.InitialContextFactoryImpl");
    properties.put(Context.PROVIDER_URL, "p030633:50004");
    InitialContext context = new InitialContext(properties);
    String name = "sap.com/GDS/GtinManager";
    GtinManagerHome home = (GtinManagerHome)
       javax.rmi.PortableRemoteObject.narrow.narrow(
           context.lookup(name), GtinManagerHome.class);
    gm = (GtinManager)home.create();
    i run this code from java application and it works.
    but in portal i get this error:
    "com.sap.engine.services.jndi.persistent.exceptions.NameNotFoundException: Path to object does not exist at GDS, the whole lookup name is sap.com/GDS/GtinManager."
    Thanks
    Raja

    Hello,
    if you NW 04 SP7 or higher, please look this document
    https://www.sdn.sap.com/sdn/index.sdn?contenttype=url&content=/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/documents/a1-8-4/how to access an ejb from a portal component.mht
    else in EP6 SP2, it is more difficult to access to an EJB because the portal have an other classloader sysem and other  JNDI context
    Best Regards,
    Fabrice

  • (261936172) Q general How can I access an EJB hosted on a remote server?

    Q<general> How can I access an EJB hosted on a remote server?
    A<general> The ability to add EJB control files enables you to access an EJB that
    is deployed to the server on which your web service is running. When you select
    "add EJB control" you need to supply the home and remote interfaces for the EJB
    as well as the JNDI name. This does not provide you with the capability for creating
    a control for a remotely hosted EJB. To use a EJB hosted on another server you
    will have to provide the appropriate code within your web service itself. You
    will have to programmatically gain to access the JNDI for the remote server, lookup
    up the home stub and use it to create the remote stub for the EJB. Of course,
    to make this work you must have the necessary client interfaces in you classpath
    (home and remote interfaces) which can easliy be achieved by adding the EJB client.jar
    file to the lib directory in the webservice WEB-INF folder.

    just define the different server path in the description xml file
    <jndi-name>jnp://serverA(B)/....</jndi-name>

  • Not able to Access the Remote EJB component

    Hi,
    Please help me i am trying to access the EJB Remote Component through my struts application but i am getting following error:
    Aug 23, 2007 4:49:06 PM org.apache.coyote.http11.Http11Protocol init
    INFO: Initializing Coyote HTTP/1.1 on http-8081
    Aug 23, 2007 4:49:06 PM org.apache.catalina.startup.Catalina load
    INFO: Initialization processed in 2086 ms
    Aug 23, 2007 4:49:06 PM org.apache.catalina.core.StandardService start
    INFO: Starting service Catalina
    Aug 23, 2007 4:49:06 PM org.apache.catalina.core.StandardEngine start
    INFO: Starting Servlet Engine: Apache Tomcat/5.0.28
    Aug 23, 2007 4:49:06 PM org.apache.catalina.core.StandardHost start
    INFO: XML validation disabled
    Aug 23, 2007 4:49:06 PM org.apache.catalina.core.StandardHost getDeployer
    INFO: Create Host deployer for direct deployment ( non-jmx )
    Aug 23, 2007 4:49:06 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Processing Context configuration file URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost\admin.xml
    Aug 23, 2007 4:49:08 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
    Aug 23, 2007 4:49:08 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
    Aug 23, 2007 4:49:09 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.webapp.admin.ApplicationResources', returnNull=true
    Aug 23, 2007 4:49:11 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Processing Context configuration file URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost\balancer.xml
    Aug 23, 2007 4:49:11 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Processing Context configuration file URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\Catalina\localhost\manager.xml
    Aug 23, 2007 4:49:11 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /registration from URL file:C:/Program Files/Apache Software Foundation/Tomcat 5.0/webapps/registration
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:11 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:12 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:14 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /customercare from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\customercare
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:15 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
    INFO: validateJarFile(C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\customercare\WEB-INF\lib\servlet.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:49:16 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
    Aug 23, 2007 4:49:16 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
    Aug 23, 2007 4:49:18 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='com.Test.customercare.web.application', returnNull=true
    Aug 23, 2007 4:49:18 PM org.apache.struts.tiles.TilesPlugin init
    INFO: Tiles definition factory loaded for module ''.
    Aug 23, 2007 4:49:19 PM org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validator-rules.xml'
    Aug 23, 2007 4:49:39 PM org.apache.struts.validator.ValidatorPlugIn initResources
    SEVERE: Connection timed out: connect
    java.net.ConnectException: Connection timed out: connect
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
         at java.net.Socket.connect(Socket.java:452)
         at java.net.Socket.connect(Socket.java:402)
         at sun.net.NetworkClient.doConnect(NetworkClient.java:139)
         at sun.net.www.http.HttpClient.openServer(HttpClient.java:402)
         at sun.net.www.http.HttpClient.openServer(HttpClient.java:618)
         at sun.net.www.http.HttpClient.<init>(HttpClient.java:306)
         at sun.net.www.http.HttpClient.<init>(HttpClient.java:267)
         at sun.net.www.http.HttpClient.New(HttpClient.java:339)
         at sun.net.www.http.HttpClient.New(HttpClient.java:320)
         at sun.net.www.http.HttpClient.New(HttpClient.java:315)
         at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:521)
         at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:498)
         at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:626)
         at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
         at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
         at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown Source)
         at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at org.apache.commons.digester.Digester.parse(Digester.java:1514)
         at org.apache.commons.validator.ValidatorResourcesInitializer.initialize(ValidatorResourcesInitializer.java:256)
         at org.apache.struts.validator.ValidatorPlugIn.initResources(ValidatorPlugIn.java:224)
         at org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:167)
         at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:1105)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:468)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
         at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
         at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
         at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
         at org.apache.catalina.core.StandardService.start(StandardService.java:480)
         at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
         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:324)
         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
    Aug 23, 2007 4:49:39 PM org.apache.struts.validator.ValidatorPlugIn initResources
    INFO: Loading validation rules file from '/WEB-INF/validation.xml'
    Aug 23, 2007 4:50:00 PM org.apache.struts.validator.ValidatorPlugIn initResources
    SEVERE: Connection timed out: connect
    java.net.ConnectException: Connection timed out: connect
         at java.net.PlainSocketImpl.socketConnect(Native Method)
         at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:305)
         at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:171)
         at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:158)
         at java.net.Socket.connect(Socket.java:452)
         at java.net.Socket.connect(Socket.java:402)
         at sun.net.NetworkClient.doConnect(NetworkClient.java:139)
         at sun.net.www.http.HttpClient.openServer(HttpClient.java:402)
         at sun.net.www.http.HttpClient.openServer(HttpClient.java:618)
         at sun.net.www.http.HttpClient.<init>(HttpClient.java:306)
         at sun.net.www.http.HttpClient.<init>(HttpClient.java:267)
         at sun.net.www.http.HttpClient.New(HttpClient.java:339)
         at sun.net.www.http.HttpClient.New(HttpClient.java:320)
         at sun.net.www.http.HttpClient.New(HttpClient.java:315)
         at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:521)
         at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:498)
         at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:626)
         at org.apache.xerces.impl.XMLEntityManager.setupCurrentEntity(Unknown Source)
         at org.apache.xerces.impl.XMLEntityManager.startEntity(Unknown Source)
         at org.apache.xerces.impl.XMLEntityManager.startDTDEntity(Unknown Source)
         at org.apache.xerces.impl.XMLDTDScannerImpl.setInputSource(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentScannerImpl$DTDDispatcher.dispatch(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at org.apache.commons.digester.Digester.parse(Digester.java:1514)
         at org.apache.commons.validator.ValidatorResourcesInitializer.initialize(ValidatorResourcesInitializer.java:256)
         at org.apache.struts.validator.ValidatorPlugIn.initResources(ValidatorPlugIn.java:224)
         at org.apache.struts.validator.ValidatorPlugIn.init(ValidatorPlugIn.java:167)
         at org.apache.struts.action.ActionServlet.initModulePlugIns(ActionServlet.java:1105)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:468)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
         at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
         at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
         at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
         at org.apache.catalina.core.StandardService.start(StandardService.java:480)
         at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
         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:324)
         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
    Aug 23, 2007 4:50:00 PM com.Test.framework.web.security.SecurityPlugIn init
    INFO: Loading roles and permissions for CBS...
    Aug 23, 2007 4:50:00 PM com.Test.framework.web.security.SSOAccessController loadRolesAndPermissions
    INFO: Loading permissions for application CBS...
    Aug 23, 2007 4:50:01 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /jsp-examples from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\jsp-examples
    Aug 23, 2007 4:50:01 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\ROOT
    Aug 23, 2007 4:50:01 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /servlets-examples from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\servlets-examples
    Aug 23, 2007 4:50:01 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /StrutsExample from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\StrutsExample
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:01 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
    INFO: validateJarFile(C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\StrutsExample\WEB-INF\lib\servlet.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
    Aug 23, 2007 4:50:02 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
    Aug 23, 2007 4:50:02 PM org.apache.commons.digester.Digester error
    SEVERE: Parse Error at line 25 column 17: The content of element type "struts-config" must match "(data-sources?,form-beans?,global-exceptions?,global-forwards?,action-mappings?,controller?,message-resources*,plug-in*)".
    org.xml.sax.SAXParseException: The content of element type "struts-config" must match "(data-sources?,form-beans?,global-exceptions?,global-forwards?,action-mappings?,controller?,message-resources*,plug-in*)".
         at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
         at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
         at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
         at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
         at org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown Source)
         at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement(Unknown Source)
         at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at org.apache.commons.digester.Digester.parse(Digester.java:1495)
         at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:944)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:465)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
         at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
         at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
         at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
         at org.apache.catalina.core.StandardService.start(StandardService.java:480)
         at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
         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:324)
         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
    Aug 23, 2007 4:50:02 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /StrutsExample_CMP from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\StrutsExample_CMP
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
    INFO: validateJarFile(C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\StrutsExample_CMP\WEB-INF\lib\servlet.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM java.util.jar.Attributes read
    WARNING: Duplicate name in Manifest: Class-Path
    Aug 23, 2007 4:50:02 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.util.LocalStrings', returnNull=true
    Aug 23, 2007 4:50:02 PM org.apache.struts.util.PropertyMessageResources <init>
    INFO: Initializing, config='org.apache.struts.action.ActionResources', returnNull=true
    Aug 23, 2007 4:50:03 PM org.apache.commons.digester.Digester error
    SEVERE: Parse Error at line 25 column 17: The content of element type "struts-config" must match "(data-sources?,form-beans?,global-exceptions?,global-forwards?,action-mappings?,controller?,message-resources*,plug-in*)".
    org.xml.sax.SAXParseException: The content of element type "struts-config" must match "(data-sources?,form-beans?,global-exceptions?,global-forwards?,action-mappings?,controller?,message-resources*,plug-in*)".
         at org.apache.xerces.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
         at org.apache.xerces.util.ErrorHandlerWrapper.error(Unknown Source)
         at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
         at org.apache.xerces.impl.XMLErrorReporter.reportError(Unknown Source)
         at org.apache.xerces.impl.dtd.XMLDTDValidator.handleEndElement(Unknown Source)
         at org.apache.xerces.impl.dtd.XMLDTDValidator.endElement(Unknown Source)
         at org.apache.xerces.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
         at org.apache.xerces.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XML11Configuration.parse(Unknown Source)
         at org.apache.xerces.parsers.XMLParser.parse(Unknown Source)
         at org.apache.xerces.parsers.AbstractSAXParser.parse(Unknown Source)
         at org.apache.commons.digester.Digester.parse(Digester.java:1495)
         at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:944)
         at org.apache.struts.action.ActionServlet.init(ActionServlet.java:465)
         at javax.servlet.GenericServlet.init(GenericServlet.java:211)
         at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1029)
         at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:862)
         at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4013)
         at org.apache.catalina.core.StandardContext.start(StandardContext.java:4357)
         at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:823)
         at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:807)
         at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:595)
         at org.apache.catalina.core.StandardHostDeployer.install(StandardHostDeployer.java:277)
         at org.apache.catalina.core.StandardHost.install(StandardHost.java:832)
         at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:701)
         at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:432)
         at org.apache.catalina.startup.HostConfig.start(HostConfig.java:983)
         at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:349)
         at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:119)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1091)
         at org.apache.catalina.core.StandardHost.start(StandardHost.java:789)
         at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1083)
         at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:478)
         at org.apache.catalina.core.StandardService.start(StandardService.java:480)
         at org.apache.catalina.core.StandardServer.start(StandardServer.java:2313)
         at org.apache.catalina.startup.Catalina.start(Catalina.java:556)
         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:324)
         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:287)
         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:425)
    Aug 23, 2007 4:50:03 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /tomcat-docs from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\tomcat-docs
    Aug 23, 2007 4:50:03 PM org.apache.catalina.core.StandardHostDeployer install
    INFO: Installing web application at context path /webdav from URL file:C:\Program Files\Apache Software Foundation\Tomcat 5.0\webapps\webdav
    Aug 23, 2007 4:50:03 PM org.apache.coyote.http11.Http11Protocol start
    INFO: Starting Coyote HTTP/1.1 on http-8081
    Aug 23, 2007 4:50:03 PM org.apache.jk.common.ChannelSocket init
    INFO: JK2: ajp13 listening on /0.0.0.0:8009
    Aug 23, 2007 4:50:03 PM org.apache.jk.server.JkMain start
    INFO: Jk running ID=0 time=0/93 config=C:\Program Files\Apache Software Foundation\Tomcat 5.0\conf\jk2.properties
    Aug 23, 2007 4:50:04 PM org.apache.catalina.startup.Catalina start
    INFO: Server startup in 57514 ms
    In

    SEVERE: Parse Error at line 25 column 17: The content
    of element type "struts-config" must match
    "(data-sources?,form-beans?,global-exceptions?,global-
    forwards?,action-mappings?,controller?,message-resourc
    es*,plug-in*)".
    org.xml.sax.SAXParseException: The content of element
    type "struts-config" must match
    "(data-sources?,form-beans?,global-exceptions?,global-
    forwards?,action-mappings?,controller?,message-resourc
    es*,plug-in*)".It's due to an error with your struts-config.xml. Your elements in the <struts-config> tag are not conforming to the DTD against which it is validated. Check if the order of the elements is as specified in this error message and also check if you have closed all tags correctly.

  • Simplest way to restrict access to remote EJB calls

    I'm using weblogic 10.3 and I'm new to security in weblogic. I was looking at the documentation at http://docs.oracle.com/cd/E13222_01/wls/docs103/ConsoleHelp/taskhelp/security/ManageSecurityForDD.html
    but got a little overwhelmed by the many options on how to implement security. Plus, I am getting confused between JDNI security and EJB Layer security (they're not the same thing, right?)
    Can someone explain what the simplest way would be to prevent an "unauthorized" client to make remote EJB calls? For example, I know of the ConnectionFilters that you can implement, which can prevent remote callers from making T3 or IIOP calls if they're not from an authorized IP, etc. This is a good start but ideally I would want to password protect the EJBs, and any EJB client would have to provide this username/password somehow. Or possibly use two-way SSL for t3? The client app would have to provide a certificate to prove that it's trusted.
    To be clear, I don't think I need weblogic to handle any fine-grained access control. I just want to make sure that the client (e.g., a webapp) is a trusted one. Once the EJB container is satisfied that the client is trusted (preferably by user/pass) then the client is free to execute any EJB methods.
    Thanks in advance.
    Edited by: user10123426 on Mar 14, 2012 10:26 AM

    I'm don't think you can do a posture check by MAC address.  If you're using SSLVPN, and you're running Windows,  you can do a Host Scan check for the following registry key:
    HKLM\System\CurrentControlSet\Services\Tcpip\Parameters\Domain
    Then set up a Pre-Login policy that goes Windows->Registry Check->Success->RegCheckOK
                                                                                                         |->Fail->RegCheckFail
    At this point you've just verified that you can read that key and the value is stored for later use.  You're not making an allow/deny decision yet. 
    Then in your Dynamic Access policy you do a Policy check for Location=RegCheckFail, that says "Unable to read registry".  The following DAP policy check looks for Location=RegCheckOK, and validates that the value is your AD domain. 
    Alternatively, you could put a NAC box (ISE or Clean Access) 'behind/after' the VPN box, so although anyone can connect only domain machines (and/or whatever other posture checks you want to make, e.g. Antivirus status) make it through to the rest of the network.

  • ClassCastException when I access an EJB from a remote EJB in WL 8.1

    I am using WebLogic 8.1 and am trying to lookup the home interface for an EJB (_ejbRemote_)
    from another EJB (_ejbCurrent_). They are deployed in seperate EARs. When I bundle
    the home and remote interfaces for ejbRemote in the EAR file that ejbCurrent
    is deployed in, everything works fine. But I need to be able to configure ejbRemote
    at run time and my customers don't want to have to bundle their classes in my
    EAR. So I invoke a custom classloader (of type java.net.URLClassLoader) that will
    load the home and remote interface classes for ejbRemote from a configurable
    location at runtime. This finds the classes no problem, and the InitialContext.lookup()
    returns a stub, but I get a 'java.lang.ClassCastException: Cannot narrow remote
    object' error when I call PortableRemoteObject.narrow(home, homeClass);
    The code looks like:
    // Assume EJBHomeStr = "com.foo.TestHome" in this case
    // Load the home interface class. This works.
    Class homeClass = urlClassLoader.loadClass(EJBHomeStr);
    // Lookup the home interface. This works.
    Object lookedUpHomeObject = initialContext.lookup(JNDIName);
    // This fails.
    Object homeObject = PortableRemoteObject.narrow(lookedUpHomeObject, homeClass);
    And the weblogic error looks like
    ... ; nested exception is:
    java.lang.ClassCastException: Cannot narrow remote object to com.foo.TestHome
    at weblogic.iiop.PortableRemoteObjectDelegateImpl.narrow(PortableRemoteO
    bjectDelegateImpl.java:219)
    at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:134)
    at ...[the rest is just my application code stack...]
    When I log the ClassLoaders for the affected objects, using getClass().getClassLoader(),
    I get:
    <snippet from log follows>
    getClass().getClassLoader(): weblogic.utils.classloaders.GenericClassLoader@667da1
    finder:
    weblogic.utils.classloaders.MultiClassFinder@db9199 annotation: myEJBApp@
    homeClass.getName(): com.foo.TestHome classloader = java.net.URLClassLoader@4f1707
    lookedUpHomeObject.getClass().getName(): com.foo.Test_EJB_kx82zy_HomeImpl_810_WLStub
    classloader = weblogic.utils.classloaders.GenericClassLoader@667da1
    finder: weblogic.utils.classloaders.MultiClassFinder@db9199 annotation: myEJBApp@
    <end snippet from log>
    So it appears that since the looked up Stub was loaded by the WebLogic classloader
    and the actual Home class was loaded by my URLClassLoader, the narrow() can't
    reconcile the two. I have tried both rmic and the Weblogic appc command to pre-generate
    the stubs, which I put in the same JAR as my home and remote interface classes
    and load with my custom classloader. But the standard stub (generated by either
    rmic or appc) is named TestHomeStub.class and Weblogic is ignoring those and
    making a class with the name Test_EJB_kx82zy_HomeImpl_810_WLStub, as shown above.
    I have also tried to put the remote interface classes and stubs in the System
    classpath using the -classpath option when I start WebLogic, but same result.
    The question is, Is there a way in WebLogic to communicate with a remote EJB in
    a seperate EAR without bundling anything about that remote EAR in my EAR? Or is
    there something I've missed? I need to keep my application J2EE compliant, meaning
    I can't hardcode any AppServer-specific code in my application.
    Thanks.

    Hi Jon,
    Glad to hear that.
    Regards,
    Slava Imeshev
    "Jon Sutula" <[email protected]> wrote in message news:[email protected]...
    >
    I fixed the problem. It turns out I didn't need to use a custom classloader at
    all, I just use Reflection directly on the classes ruturned from my JNDI lookup.
    So when I lookup the home class, I don't need to narrow or cast it, I just use
    Reflection to invoke the "create" method. Then I use the object that I get from
    create and directly invoke whatever method on it I need, again using Reflection.
    And that works.
    "Slava Imeshev" <[email protected]> wrote:
    Hi Jon,
    The problem is, this class is not available for the classloader
    running your "main code".
    You can try to hack the into the thread context class loader:
    Thread thread = Thread.currentThread();
    ContextClassLoader originalClassLoader = thread.getContextClassLoader();
    try {
    YourURLClassloader yourClassLoader = new
    YourURLClassloader(originalClassLoader);
    thread.setContextClassLoader(yourClassLoader );
    // your code goes here
    } finally {
    // Don't forget to restore it !!!
    thread.setContextClassLoader(originalClassLoader);
    Be very cautious. If you fail to restore the original context class loader,
    you will likely have to restart the server.
    Hope this helps.
    Regards,
    Slava Imeshev
    "Jon Sutula" <[email protected]> wrote in message news:[email protected]...
    I am using WebLogic 8.1 and am trying to lookup the home interfacefor an EJB (_ejbRemote_)
    from another EJB (_ejbCurrent_). They are deployed in seperate EARs.When I bundle
    the home and remote interfaces for ejbRemote in the EAR file that
    ejbCurrent
    is deployed in, everything works fine. But I need to be able to configure
    ejbRemote
    at run time and my customers don't want to have to bundle their classesin my
    EAR. So I invoke a custom classloader (of type java.net.URLClassLoader)that will
    load the home and remote interface classes for ejbRemote from a configurable
    location at runtime. This finds the classes no problem, and the InitialContext.lookup()
    returns a stub, but I get a 'java.lang.ClassCastException: Cannot narrowremote
    object' error when I call PortableRemoteObject.narrow(home, homeClass);
    The code looks like:
    // Assume EJBHomeStr = "com.foo.TestHome" in this case
    // Load the home interface class. This works.
    Class homeClass = urlClassLoader.loadClass(EJBHomeStr);
    // Lookup the home interface. This works.
    Object lookedUpHomeObject = initialContext.lookup(JNDIName);
    // This fails.
    Object homeObject = PortableRemoteObject.narrow(lookedUpHomeObject,homeClass);
    And the weblogic error looks like
    ... ; nested exception is:
    java.lang.ClassCastException: Cannot narrow remote object tocom.foo.TestHome
    at weblogic.iiop.PortableRemoteObjectDelegateImpl.narrow(PortableRemoteO
    bjectDelegateImpl.java:219)
    at javax.rmi.PortableRemoteObject.narrow(PortableRemoteObject.java:134)
    at ...[the rest is just my application code stack...]
    When I log the ClassLoaders for the affected objects, using getClass().getClassLoader(),
    I get:
    <snippet from log follows>
    getClass().getClassLoader(): weblogic.utils.classloaders.GenericClassLoader@667da1
    finder:
    weblogic.utils.classloaders.MultiClassFinder@db9199 annotation: myEJBApp@
    homeClass.getName(): com.foo.TestHome classloader = java.net.URLClassLoader@4f1707
    lookedUpHomeObject.getClass().getName(): com.foo.Test_EJB_kx82zy_HomeImpl_810_WLStub
    classloader = weblogic.utils.classloaders.GenericClassLoader@667da1
    finder: weblogic.utils.classloaders.MultiClassFinder@db9199 annotation:myEJBApp@
    <end snippet from log>
    So it appears that since the looked up Stub was loaded by the WebLogicclassloader
    and the actual Home class was loaded by my URLClassLoader, the narrow()can't
    reconcile the two. I have tried both rmic and the Weblogic appc commandto pre-generate
    the stubs, which I put in the same JAR as my home and remote interfaceclasses
    and load with my custom classloader. But the standard stub (generatedby either
    rmic or appc) is named TestHomeStub.class and Weblogic is ignoringthose and
    making a class with the name Test_EJB_kx82zy_HomeImpl_810_WLStub, asshown above.
    I have also tried to put the remote interface classes and stubs inthe System
    classpath using the -classpath option when I start WebLogic, but sameresult.
    The question is, Is there a way in WebLogic to communicate with a remoteEJB in
    a seperate EAR without bundling anything about that remote EAR in myEAR? Or is
    there something I've missed? I need to keep my application J2EE compliant,meaning
    I can't hardcode any AppServer-specific code in my application.
    Thanks.

  • How to access an EJB from a web application deployed in the same server

    Hey All,
    I deployed an EJB named EventServerBean to Sun Application Server 9.0, and put the client side jar file (named eventserver.jar which is generated by Sun Application Server) to C:\Sun\AppServer\lib. Now, I have a web application which is a simple jave file -- lookup EventServer EJB and invoke a remote method in this EJB. However, the web application always throws an exception "java.lang.NoClassDefFoundError: eventserver/EventServerRemoteHome"
    Here is my java class that access the ejb:
    public class Post_Event {
        public HashMap<String, String> getEventInfo(String event_name, String site) {
            System.out.println("Post_Event, the class path: " + System.getProperty("java.class.path"));       
            System.out.println("Post_Event, user.dir: " + System.getProperty("user.dir"));
            System.out.println("Post_Event, java.library.path: " + System.getProperty("java.library.path"));
            HashMap<String, String> result = null;
            EventServerRemote remote = null;
            StringTokenizer st, st2;
            // here get the event information from host
            try {
                String lookupStr = "corbaname:iiop:" + site + ":3700#ejb/EventServerBean";
                InitialContext initialContext = new InitialContext();
                EventServerRemoteHome remoteHome = (EventServerRemoteHome) javax.rmi.PortableRemoteObject.narrow(initialContext.lookup(lookupStr), EventServerRemoteHome.class);
                if (remoteHome != null) {
                    remote = remoteHome.create();
            } catch (javax.naming.NamingException ne) {
                ne.printStackTrace();
                return null;
            } catch (javax.ejb.CreateException ce) {
                ce.printStackTrace();
                return null;
            } catch (java.rmi.RemoteException re) {
                re.printStackTrace();
                return null;
            } catch (java.io.IOException ioe) {
                ioe.printStackTrace();
                return null;
            System.out.println("look up remote event server successfully.");
         result = remote.getEvent(event_name);
            return result;
        } I output the class path in this java file, and the class path DOES include the path C:\Sun\AppServer\lib where eventserver\EventServerRemoteHome.class is.
    Does anyone know why it happens? Why a java class can't find a class that is in its class path?
    appreciate any help!

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Wael Abbas ([email protected]):
    Thank you for your great topic.
    I think you need to copy the snippet code and past it to every application, applet, servlet or JSP every time you need to use your EJB.
    Its better to include this snippet code in a simple JavaBean and use this bean as a bridge to your EJB, you may include a connect method in your JavaBean or but the connection code in the constructor and include a setters, getters and other methods to encapsulate your EJB methods.
    You can use your JavaBean in any application, applet, servlet or JSP just create an object form it and call its methods.
    Its just an idea
    I hope it will be useful.
    <HR></BLOCKQUOTE>
    null

  • Problem calling a method in a servlet witch returns remote ejb

    Hi, I have a problem combining servlets ands ejbs, I expose my problem :
    What I have :
    1 . I have a User table into a SGBD with two attributes login and pass.
    2 . I have a UserBean linked to User table with a remote interface
    3 . I have a stateless UserSessionBean with a remote interface
    4 . I have a UserServlet linked to a jsp page which allows me to add users
    5 . I use Jboss
    What is working ?
    1 - I have a method newUser implemented in my UserSessionBean :
    public class UserSessionBean implements SessionBean {
      private SessionContext sessionContext;
      private UserRemoteHome userRemoteHome;
      public void ejbCreate() throws CreateException {
      // Initialize UserRemoteHome
      // Method to add a new user
      public UserRemote newUser(String login, String password) {
            UserRemote newUser = null;
            try {
                newUser = userRemoteHome.create(login, password);
            } catch (RemoteException ex) {
                System.err.println("Error: " + ex);
            } catch (CreateException ex) {
                System.err.println("Error: " + ex);
            return newUser;
    }2 - When I test this method with a simple client it works perfectly :
    public class TestEJB {
        public static void main(String[] args) {
            Context initialCtx;
            try {
                // Create JNDI context
                // Context initialization
                // Narrow UserSessionHome
                // Create UserSession
                UserSession session = sessionHome.create();
                // Test create
                UserRemote newUser = session.newUser("pierre", "hemici");
                if (newUser != null) {
                    System.out.println(newUser.printMe());
            } catch (Exception e) {
                System.err.println("Error: " + e);
                e.printStackTrace();
    Result : I got the newUser printed on STDOUT and I check in the User table (in the SGBD) if the new user has been created.
    What I want ?
    I want to call the newUser method from the UserServlet and use the RemoteUser returned by the method.
    What I do ?
    The jsp :
    1 - I have a jsp page where a get information about the new user to create
    2 - I put the login parameter and the password parameter into the request
    3 - I call the UserServlet when the button "add" is pressed on the jsp page.
    The Servlet :
    1 - I have a method doInsert which call the newUser method :
    public class UserServlet extends HttpServlet {
        private static final String CONTENT_TYPE = "text/html";
        // EJB Context
        InitialContext ejbCtx;
        // Session bean
        UserSession userSession;
        public void init() throws ServletException {
            try {
                // Open JNDI context (the same as TestClient context)
                // Get UserSession Home
                // Create UserSession
                userSession = userSessionHome.create();
            } catch (NamingException ex) {
                System.out.println("Error: " + ex);
            } catch (RemoteException ex) {
                System.out.println("Error: " + ex);
            } catch (CreateException ex) {
                System.out.println("Error: " + ex);
        protected void service(HttpServletRequest req, HttpServletResponse resp) throws
                ServletException, IOException {
         * Does insertion of the new user in the database.
        public void doInsert(HttpServletRequest req, HttpServletResponse resp) throws
                ServletException, IOException {
            try {
                // Get parameters to create the newUser
                String login = req.getParameter("login");
                String password = req.getParameter("password");
               // Create the newUser
                System.out.println("Calling newUser before");
                UserRemote user = userSession.newUser(login, password);
                System.out.println("Calling newUser after");
            } catch (Exception e) {
        // Clean up resources
        public void destroy() {
    Result :
    When I run my jsp page and click on the "add" button, I got the message "Calling newUser before" printed in STDOUT and the error message :
    ERROR [[userservlet]] Servlet.service() for servlet userservlet threw exception
    javax.servlet.ServletException: loader constraints violated when linking javax/ejb/Handle class
         at noumea.user.UserServlet.service(UserServlet.java:112)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:252)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:173)
         at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:81)
         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.CustomPrincipalValve.invoke(CustomPrincipalValve.java:39)
         at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:153)
         at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:59)
         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:856)
         at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:744)
         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:534)
    Constat :
    I checked into my SGBD and the new user has been created.
    The error appears only when the method return Remote ejbs, if I return simples objects (Strings, int..) it works.
    What can I do to resolve this problem ?
    Thank you.

    "Why do you want to servlet to gain access to another EJB through the stateless session bean. Why cant the servlet call it directly ?"
    Because I want to access to the informations included in the entity bean UserBean (which is remote).
    You said that it is a bad design, but how can I access to my UserBean ejbs from the session bean if I don't do that ?
    For example I want a List of all users to be seen in a jsp page :
    1 - I call the method getUserList which returnsan ArrayList of UserRemote.
    2 - I iterate over the ArrayList to get the users parameters to be seen.
    As the other example (newUser), when I do
    ArrayList users = (ArrayList) userSession.getUserList(); with the simple client it works, but in the servlet I got the same error.
    But, if I call directly the findAll method (as you'are saying) in the servlet
    ArrayList users = (ArrayList) userRemoteHome.findAll(); it works...
    I think that if my servlet calls directly entity ejbs, I don't need UserSession bean anymore. Is that right ?
    I precise that my design is this :
    jsp -> servlet -> session bean -> entity bean -> sgbd
    Is that a bad design ? Do I need the session bean anymore ?
    Thank you.

Maybe you are looking for

  • Problems converting from MS Word 2007 to PDF using LiveCycle Designer 8

    Hi all, Hope anybody out there could assist me. have a Word document (we are using Office 2007) and I'm trying to use Adobe Live Cycle Designer 8.0 to convert a form from word to pdf. However, I get an error message (as shown in the image below) Is t

  • Keynote Presenter Notes

    How do I printmy Presenter Notes from Key Note?

  • IMovie 9.0.2 unstable on 2011 MacBook Pro

    iMove 9.0.2 has been hanging on creating thumbnails and also exporting projects on my new MacBook Pro 15" (i7 Quad core 2.2GHz). It works fine on my 2008 8 core Mac Pro processing the same files. On the MacBook Pro though it typically stops in the mi

  • DAG Design

    I've got 3 database servers in a DAG, 2 of them at my main site, and 1 of them at my DR site.  We also have 2 file share witnesses configured, the primary being at the main site, and the alternate at the DR site.  We recently had a scenario where the

  • Changing applet background

    hi i've created my applet successfully, but would now like to change it's appearance primarily so it isn't a grey square box. i've created an image to use as a 'background' (it does more than just change the colour) but when it loads up, the image ov