Fail to lookup the local EJB by JNDI in Managed Server

Hi all,
I currently in a deep problem, and can't figure out the cause of it. It just annoying me for week.
In my app, I have binded to the local ejb to JNDI (let's say "ejb/CustomerLocal"), then the client lookup the Local EJB by the following code.
localIc = new InitialContext();
home = (EJBLocalHome)localIc.lookup("ejb/CustomerLocal");
It works well as I do development in the Domain Admin Server. However, when I do the System Integration Test and deploy my app to the managed server, the app fail. It just can't do the Local EJB lookup. Following is the exception.
javax.naming.NameNotFoundException: Unable to resolve 'ejb/CustomerLocal' Resolved ejb[Root exc
eption is javax.naming.NameNotFoundException: Unable to resolve 'ejb.CustomerLocal' Resolved ejb
]; remaining name CustomerLocal'
Does anybody know the cause of it and have solution?
Thanks a lot

Hi,
Just now I replicated the same problem what you are facing. I created one managed server. When I deployed my ejb to admin server I did not get any problem. But when I deploy the same into my managed server I got Naming Exception. Because I did n/t specify Context.PROVIDER_URL. A provider URL contains bootstrap server information that the initial context factory can use to obtain an initial context. So when you deploy EJB on another server, you have to get the Naming service from that server. Hence provider URL must pointing to that server. So I included following statements before lookup my ejb in managed server.
Properties p=new Properties ();
p.put (Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
p.put (Context.PROVIDER_URL,"t3://localhost: 7003");
Context ctx=new InitialContext (p);
FacadeHome home=(FacadeHome) ctx.lookup ("ejb/CustomerLocal");
In my case managed server port number is 7003. Now onwards managed server (Port number 7003) will provide ‘Naming Service’, not by admin server (port number 7001), which is default.
Note: Context.PROVIDER_URL— specifies the URL of the WebLogic Server that provides the name service. The default is t3://localhost: 7001. When you are not specified it will assume that POVIDER_URL is t3://localhost: 7001 this is nothing but your admin server in your case. However, a JNDI client may need to access a name space other than the one identified in its environment. In this case, it is necessary to explicitly set the java.naming.provider.url (provider URL) property used by the InitialContext constructor.
I hope it helps.
Regards,
Kuldeep Singh.

Similar Messages

  • Unable to connect to the Data Access service for this management server

    Hate to raise a sleeping horse but was hoping someone might have some insight into why SCOM Report Server install is failing. I am using a domain account for SCOM 2012 R2 services in a distributive environment
    with 2 management servers and 2 SQL servers…one for Ops db and one for DW db.
     Install was failing on selecting the management server. Research led me to
    Kevin Holman's site. I followed his doc and SPN are set per your config and can telnet to MGMT1 on 5723…firewall is off on all servers. I am a domain admin and scom.mgmt account (MSOMSdkSvc) is a local admin on the MGMT servers.
    >setspn -l domain\scom.mgmt
    Registered ServicePrincipalNames for CN=scom.mgmt,OU=Service Accounts,DC= domain,DC=net:
    MSOMSdkSvc/SCOM-MGMT1
    MSOMSdkSvc/SCOM-MGMT1.domain.net
    MSOMSdkSvc/SCOM-MGMT2
    MSOMSdkSvc/SCOM-MGMT2.domain.net
    >setspn -l domain\scom-mgmt1
    Registered ServicePrincipalNames for CN=SCOM-MGMT1,OU=SCOM,OU=INTERNAL,DC=domain,DC=net:
    MSOMHSvc/SCOM-MGMT1.domain.net
    TERMSRV/SCOM-MGMT1.domain.net
    WSMAN/SCOM-MGMT1.domain.net
    RestrictedKrbHost/SCOM-MGMT1.domain.net
    HOST/SCOM-MGMT1.domain.net
    MSOMHSvc/SCOM-MGMT1
    TERMSRV/SCOM-MGMT1
    WSMAN/SCOM-MGMT1
    RestrictedKrbHost/SCOM-MGMT1
    HOST/SCOM-MGMT1
    >setspn -l domain\scom-mgmt2
    Registered ServicePrincipalNames for CN=SCOM-MGMT2,OU=SCOM,OU=INTERNAL,DC=domain,DC=net:
    MSOMHSvc/ SCOM-MGMT2.domain.net
    MSOMHSvc/ SCOM-MGMT2
    WSMAN/SCOM-MGMT2.domain.net
    WSMAN/SCOM-MGMT2
            TERMSRV/SCOM-MGMT2.domain.net
    TERMSRV/SCOM-MGMT2
    RestrictedKrbHost/SCOM-MGMT2
    HOST/CHH-SCOM-MGMT2
    RestrictedKrbHost/CHH-SCOM-MGMT2.osi-asp.net
    HOST/CHH-SCOM-MGMT2.osi-asp.net
    >setspn -l domain\scom-ssrs
    Registered ServicePrincipalNames for CN=SCOM-SSRS,OU=SCOM SQL,OU=SCOM,OU=CHH-INTERNAL,DC=domain,DC=net:
        WSMAN/SCOM-SSRS
    WSMAN/SCOM-SSRS.domain.net
    MSSQLSvc/SCOM-SSRS.domain.net
    MSSQLSvc/SCOM-SSRS.domain.net:1433
        TERMSRV/SCOM-SSRS.domain.net
    TERMSRV/SCOM-SSRS
    RestrictedKrbHost/SCOM-SSRS
      HOST/SCOM-SSRS
    RestrictedKrbHost/SCOM-SSRS.domain.net
    HOST/SCOM-SSRS.domain.net
    When I point to the MGMT server, I keep getting “Unable to connect to the Data Access service for this management server. Ensure the Data Access service is running and that the service, the management group, and setup are
    all the same version”.
    OpsMgrSetupWizard.log states…
    Info:     
    :Could not connect to Management Server: scom-mgmt1.domain.net with exception: Threw Exception.Type: System.ArgumentException, Exception Error Code: 0x80070057, Exception.Message: Version string portion was too short or
    too long.
    Info:     
    :StackTrace:   at System.Version.TryParseVersion(String version, VersionResult& result) at System.Version..ctor(String version) at Microsoft.EnterpriseManagement.OperationsManager.Setup.Common.SetupHelpers.IsManagementServerCurrentVersion(String
    managementServer) at Microsoft.EnterpriseManagement.OperationsManager.Setup.Common.SetupHelpers.CanConnectToManagementGroup(String managementServer)
    When I searched on "Exception.Message: Version string portion was too short or too long" it led me to .Net strings in the reg. i deleted all refs to older versions (3.x) but still no good.
    Bob

    Well, I’m back to trying to get SCOM Report Server up and running. This time I decided to try the command line silent install and rely on logs to debug. But it still fails.
    This is the script: SETUP /install /InstallPath:D:\Program Files\Microsoft System Center 2012 R2\Operations Manager /components:OMReporting /ManagementServer:<server>.<domain> /SRSInstance:<instance> /DataReaderUser:<domain>\<account>
    /DataReaderPassword:******** /SendODRReports:0 /UseMicrosoftUpdate:0 /AcceptEndUserLicenseAgreement:1
    When I run the script, I get a pop-up: “System CenterOperations Manager Setup has stopped working with the following:
    Problem signature:
    Problem Event Name:                       
    CLR20r3
    Problem Signature 01:                      
    setupchainerui.exe
    Problem Signature 02:                      
    7.0.5000.0
    Problem Signature 03:                      
    522a5b85
    Problem Signature 04:                      
    mscorlib
    Problem Signature 05:                      
    4.0.0.0
    Problem Signature 06:                      
    53b4fc1e
    Problem Signature 07:                      
    e4d
    Problem Signature 08:                      
    5a
    Problem Signature 09:                      
    System.FormatException
    OS Version:                                         
    6.1.7601.2.1.0.274.10
    Locale ID:                                            
    1033
    Additional Information 1:                 
    4911
    Additional Information 2:                 
    49111a576c61a461b7f2900e4224563c
    Additional Information 3:                 
    a1e6
    Additional Information 4:                 
    a1e62e9c159c1d7601a31ccff83dbf94
    App Event Log:
    - <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
    - <System>
    <Provider Name=".NET Runtime" />
    <EventID Qualifiers="0">1026</EventID>
    <Level>2</Level>
    <Task>0</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2015-01-29T19:02:39.000000000Z" />
    <EventRecordID>4999</EventRecordID>
    <Channel>Application</Channel>
    <Computer>SERVER NAME</Computer>
    <Security />
    </System>
    - <EventData>
    <Data>Application: SetupChainerUI.exe Framework Version: v4.0.30319 Description: The process was terminated due to an unhandled exception.
    Exception Info: System.FormatException Stack: at Microsoft.SystemCenter.Essentials.SetupFramework.Program.Main()</Data>
    </EventData>
    </Event>
    - <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
    - <System>
    <Provider Name="Application Error" />
    <EventID Qualifiers="0">1000</EventID>
    <Level>2</Level>
    <Task>100</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2015-01-29T19:02:41.000000000Z" />
    <EventRecordID>5000</EventRecordID>
    <Channel>Application</Channel>
    <Computer>SERVER NAME</Computer>
    <Security />
    </System>
    - <EventData>
    <Data>SetupChainerUI.exe</Data>
    <Data>7.1.10226.0</Data>
    <Data>522a5b85</Data>
    <Data>KERNELBASE.dll</Data>
    <Data>6.1.7601.18409</Data>
    <Data>5315a05a</Data>
    <Data>e0434352</Data>
    <Data>000000000000940d</Data>
    <Data>a64</Data>
    <Data>01d03bf626a03a7a</Data>
    <Data>C:\Users\USER NAME\AppData\Local\SCOM\Setup\SetupChainerUI.exe</Data>
    <Data>C:\Windows\system32\KERNELBASE.dll</Data>
    <Data>65be21be-a7e9-11e4-a4d7-005056966e1b</Data>
    </EventData>
    </Event>
    - <Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
    - <System>
    <Provider Name="Windows Error Reporting" />
    <EventID Qualifiers="0">1001</EventID>
    <Level>4</Level>
    <Task>0</Task>
    <Keywords>0x80000000000000</Keywords>
    <TimeCreated SystemTime="2015-01-29T19:03:27.000000000Z" />
    <EventRecordID>5001</EventRecordID>
    <Channel>Application</Channel>
    <Computer>SERVER NAME</Computer>
    <Security />
    </System>
    - <EventData>
    <Data />
    <Data>0</Data>
    <Data>CLR20r3</Data>
    <Data>Not available</Data>
    <Data>0</Data>
    <Data>setupchainerui.exe</Data>
    <Data>7.0.5000.0</Data>
    <Data>522a5b85</Data>
    <Data>mscorlib</Data>
    <Data>4.0.0.0</Data>
    <Data>53b4fc1e</Data>
    <Data>e4d</Data>
    <Data>5a</Data>
    <Data>System.FormatException</Data>
    <Data />
    <Data />
    <Data>C:\ProgramData\Microsoft\Windows\WER\ReportArchive\AppCrash_setupchainerui.e_9724aaa8eec4ffba07c27fea369e612e949d75_5b269652</Data>
    <Data />
    <Data>0</Data>
    <Data>65be21be-a7e9-11e4-a4d7-005056966e1b</Data>
    <Data>0</Data>
    </EventData>
    </Event>
    OpsMgrSetupWizard.log
    [13:48:16]:          
    Error:     :Uncaught Exception: Threw Exception.Type: System.FormatException, Exception Error Code: 0x80131537, Exception.Message: Input string was not in a correct format.
    [13:48:16]:          
    Error:     :StackTrace:  
    at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
       at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
       at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
       at Microsoft.SystemCenter.Essentials.SetupFramework.PropertyBagDictionary.GetProperty[T](String property)
       at Microsoft.EnterpriseManagement.OperationsManager.Setup.Common.SetupHelpers.ValidateBureaucraticSwitches()
       at Microsoft.EnterpriseManagement.OperationsManager.Setup.Common.RationalizeCommandLineArguments.ValidateSilentInstallCommandLineOptions()
       at Microsoft.EnterpriseManagement.OperationsManager.Setup.Common.RationalizeCommandLineArguments.Rationalize()
       at Microsoft.EnterpriseManagement.OperationsManager.Setup.Common.SetupHelpers.RationalizeGeneralInstall()
       at Microsoft.SystemCenter.Essentials.SetupFramework.Program.RationalizeInstall()
       at Microsoft.SystemCenter.Essentials.SetupFramework.Program.Main()
    Any ideas? I feel like I’m just going in circles…Bob

  • Problems while performing lookup for Local EJBs

    Can anybody tell me how can i perform local ejb lookup in Sun app Server 8.0/8.1 ?
    I have following entries in ejb-jar.xml.
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN" "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
    <ejb-jar >
    <enterprise-beans>
    <session >
    <ejb-name>TeamLeaderBean</ejb-name>
    <local-home>spring.ejb.example.TeamLeaderLocalHome
    </local- home>
    <local>spring.ejb.example.TeamLeaderLocal</local>
    <ejb-class>spring.ejb.example.TeamLeaderBean</ejb-class>
    <session-type>Stateless</session-type>
    <transaction-type>Container</transaction-type>
    </session>
    </enterprise-beans>
    <assembly-descriptor></assembly-descriptor>
    </ejb-jar>
    In sun-ejb-jar.xml I have
    <sun-ejb-jar>
    <enterprise-beans>
    <ejb>
    <ejb-name>TeamLeaderBean</ejb-name>
    <jndi-name>TeamLeaderBeanLocal</jndi-name>
    </ejb>
    </enterprise-beans>
    </sun-ejb-jar>
    In the client EJBs code I have used following ways of performing lookup...
    ctx.lookup("java:comp/env//TeamLeaderBeanLocal");
    ctx.lookup("java:comp/env/ejb/local/TeamLeaderBeanLocal");
    ctx.lookup("ejb/TeamLeaderBeanLocal");
    Unfortunately none of these performs a successful lookup...???
    Can anybody solve my problem?

    In order to look up a local EJB from an EJB client you have to add an <ejb-local-ref> element for client EJB. So:
    <session>
    <ejb-name>MyClientEJB</ejb-name>
    <ejb-local-ref>
    <ejb-ref-name>ejb/TeamLeaderBeanLocal</ejb-ref-name>
    <ejb-ref-type>Session</ejb-ref-type>
    <ejb-link>TeamLeaderBeanLocal</ejb-link>
    </ejb-local-ref>
    </session>
    fil
    Can anybody tell me how can i perform local ejb
    lookup in Sun app Server 8.0/8.1 ?
    I have following entries in ejb-jar.xml.
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE ejb-jar PUBLIC "-//Sun Microsystems,
    Inc.//DTD Enterprise JavaBeans 2.0//EN"
    "http://java.sun.com/dtd/ejb-jar_2_0.dtd">
    <ejb-jar >
    <enterprise-beans>
    <session >
    <ejb-name>TeamLeaderBean</ejb-name>
    <local-home>spring.ejb.example.TeamLeaderLocalHome
    </local- home>
    <local>spring.ejb.example.TeamLeaderLocal</local>
    <ejb-class>spring.ejb.example.TeamLeaderBean</ejb-clas
    s>
    <session-type>Stateless</session-type>
    <transaction-type>Container</transaction-type>
    </session>
    </enterprise-beans>
    <assembly-descriptor></assembly-descriptor>
    </ejb-jar>
    In sun-ejb-jar.xml I have
    <sun-ejb-jar>
    <enterprise-beans>
    <ejb>
    <ejb-name>TeamLeaderBean</ejb-name>
    <jndi-name>TeamLeaderBeanLocal</jndi-name>
    </ejb>
    </enterprise-beans>
    </sun-ejb-jar>
    In the client EJBs code I have used following ways of
    performing lookup...
    ctx.lookup("java:comp/env//TeamLeaderBeanLocal");
    ctx.lookup("java:comp/env/ejb/local/TeamLeaderBeanLoca
    l");
    ctx.lookup("ejb/TeamLeaderBeanLocal");
    Unfortunately none of these performs a successful
    lookup...???
    Can anybody solve my problem?

  • How to lookup the remote interface in JNDI of the cluster (glassfish)

    I have write a simple sessionbean:
    package authority;
    import javax.ejb.Stateless;
    * Session Bean implementation class LoginSessionBean
    @Stateless
    public class LoginSessionBean implements LoginSessionBeanRemote, LoginSessionBeanLocal {
         * Default constructor.
        public LoginSessionBean() {
            // TODO Auto-generated constructor stub
        @Override
        public boolean login(String name, String password)
            boolean result = false;
            System.out.println("User: " + name + " is login with password: " + password);
            return result;
        @Override
        public LoginSessionBeanRemote create()
            // TODO Auto-generated method stub
            return this;
    }And I write a simple client to test it.
    package test;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.rmi.PortableRemoteObject;
    import authority.LoginSessionBean;
    import authority.LoginSessionBeanRemote;
    public class SessionBeanTestClient
        public static void main(String[] args)
            try
                InitialContext context = new InitialContext();
                Object obj = context.lookup(LoginSessionBean.class.getName());
                LoginSessionBeanRemote loginService = (LoginSessionBeanRemote)PortableRemoteObject.narrow(obj, LoginSessionBeanRemote.class);
                loginService.login("Jason", "password");
            catch (NamingException e)
                // TODO Auto-generated catch block
                e.printStackTrace();
    }And it is OK, but after I deploy the sessionbean into a cluster with two instances on local host, it can not find the remote interface:
    javax.naming.NameNotFoundException: authority.LoginSessionBean not found
         at com.sun.enterprise.naming.TransientContext.doLookup(TransientContext.java:216)Is it different for cluster (for IIOP port?), I want to test the HA solution, how could I start it?

    Please look at http://otn.oracle.com/tech/java/oc4j/htdocs/oc4j-how-to.html. There is a How-To on local interface.
    thanks
    Debu

  • Constants at the local EJB interface

    Can I include constants at the EJB interface? I want to provide to the client the set of values that a specific method avoid... How can I do it?
    Thankx

    technically there is no problem in putting constants in the remote interface.
    ex. define a string constant like
    public static final String var = "hello";
    it will work.
    But ideally, interfaces should be used to define a "contract" for the client server communication.
    A better way to provide the client with a set of contants is that you create a separate file full of constants and then compile both the client and the server with it.
    at runtime as well, the class for this constant file should be present in the classpath of both environments.
    regards,
    Abhishek.

  • Failed to install the trial version of Developer-Dev. Server Rel. 6/6i

    About two months ago I bought Robert J. Muller's "ORACLE DEVELOPER Starter Kit" (Oracle Press 1999) with an included CD containing the trial version of Developer-Developer Server Rel 6.0 and Oracle 8i. I must have registered immedialtely in those days. TODAY than I tried to install the software but failed. I probably ran out of the 30 days period (which starts on the day of registration ?). So I'd like to download this software in order to be able to use the book. Where can I find the software?
    Thank you and best regards,

    Hi Andrew,
    just for the record, i'm the last one (despite others) running around here and hunting for (virtual) points (for an example you may have a look at this 24 points for a single answer). For me it simply looked like you missed this. Since my crystal ball is out of order at the moment (and my answer has been posted 4 minutes after the corresponding question, which makes it technically impossible to try it out by yourself in this short amount of time), this was meant as a hint, nothing else (therefore the at the end).
    Anyway, the only important thing is, that you figured it out (with or without help) finally.
    Kind regards
    Stefan
    PS: Nevertheless a thank you to Benny.

  • Failed to search the log and log repository using Application Server Contro

    I installed the OAS 9.0.4(10g) and tried to use Application Sever Control to search the log files or log repository. However, each time I clicked the Search button, the error page showed the following messages:The operation cannot be performed because the page contains expired data. The data will be automatically refreshed so you can try your operation again.
    I checked the emias.log and something like following existed:
    ERROR chart.EmChartCacheWorker getCachedChart.505 - EmChartCacheWorker.getCachedChart: 4abdc63146b7578d9853d1adc2aec4245fbf113b.png
    EXCEPTION: java.io.FileNotFoundException: /home/oas/product/OAS904/sysman/webapps/emd/images/chartCache/chart4abdc63146b7578d9853d1adc2aec4245fbf113b.png.png (No such file or directory)
    2004-09-14 11:27:37,414 [HttpRequestHandler-24691856] ERROR chart.EmChartBean getChartImage.2662 - ERROR generating chart image: java.io.FileNotFoundException: /home/oas/product/OAS904/sysman/webapps/emd/images/chartCache/chart4abdc63146b7578d9853d1adc2aec4245fbf113b.png.png (No such file or directory)
    2004-09-14 11:27:37,422 [HttpRequestHandler-30430942] ERROR chart.EmChartBean getChartImage.2655 - EXCEPTION while generating chart image [id]: 030ddc5b70a789c374eb11e2ae97ac8c79441f5b.png
    2004-09-14 11:27:37,422 [HttpRequestHandler-30430942] ERROR chart.EmChartBean getChartImage.2658 - java.io.FileNotFoundException: /home/oas/product/OAS904/sysman/webapps/emd/images/chartCache/chart030ddc5b70a789c374eb11e2ae97ac8c79441f5b.png.png (No such file or directory)
    I searched the directory specified in the emias.log and found it was empty!
    So what should I do to avoid this problem?
    Thanks in advance!

    Thank you.
    When you fire the processes to the report server you
    can trace the report with the following parameter:
    RWCLIENT.EXE SERVER=my_server
    TRACEFILE=c:\my_trace.trc
    TRACEMODE=TRACE_REPLACE
    TRACEOPTS=TRACE_ALL

  • Howto: portable bind, lookup remote + local beans (EJB3) to JNDI with WL 10

    I struggle writing portable ejb3 applications with weblogic.
    I have a JEE5 (EJB3) application using the standard and it works fine on JBoss and WebSphere.
    Porting it to Weblogic (10.0) there are quite a lot of problems, mainly
    in the area of JNDI lookups of EJBs.
    So the issue is how to configure the JNDI-Names of local and remote beans (EJB3!)
    in a portable way with Weblogic without making the application unportable.
    The biggest problem is caused by the fact, that WL 10 does not bind the EJBs
    to the JNDI-tree by default. The bound name would not really be important (JBoss and WebSphere
    come up with a value that can easily be used for a generic lookup). Just any binding
    would be fine.
    So there has to be some extra step in order to get WL 10 binding a remote or local
    bean into the JNDI tree. Unfortunately none of them works/is acceptable in an portable JEE app.
    Idea1: Using the "mappedName" attribute (of @Stateless, @Stateful)
    Well, this one is not portable as the documentation states:
    [http://edocs.bea.com/wls/docs100/ejb30/annotations.html#wp1417411|http://edocs.bea.com/wls/docs100/ejb30/annotations.html#wp1417411]
    Idea2: Using @weblogic.ejbgen.JndiName
    Using weblogic's annotation JndiName also doesn't bind the bean to the given names:
    @Stateless
    @weblogic.ejbgen.JndiName(local="myapp/XBean/local",remote="myapp/XBean/remote")
    public class XBean implements XLocal {
    Besides this, that code would not be portable (as nobody wants an weblogic.jar within another application server).
    Idea3: Using weblogic-ejb-jar.xml
    Mapping a bean using the weblogic-ejb-jar.xml below, also doesn't work.
    The bean is not bound to the given name "myapp/XBean/remote":
    Exception in thread "main" javax.naming.NameNotFoundException:
    Unable to resolve 'myapp.XBean.remote'. Resolved 'myapp.XBean' [Root exception is javax.naming.NameNotFoundException: Unable to resolve 'myapp.XBean.remote'. Resolved 'myapp.XBean']; remaining name 'remote'
    Looking at the JNDI tree, there is "something" bound to "myapp.XBean", but it is not the bean.
    Doing a lookup with this name ("myapp/XBean" or "myapp.XBean"), gives this:
    Exception in thread "main" java.lang.ClassCastException: weblogic.jndi.internal.WLContextImpl cannot be cast to test.server.XRemote
         at test.client.Client.main(Client.java:14)
    Question 1) What is the preferred way to bind and lookup a remote bean in Weblogic 10?
    Again: the goal is to use pure EJB3.
    Question 2) What is the preferred way to bind and lookup a local bean in WL 10?
    This lookup has to be done on the server in some "unmanaged" classes
    where injection doesn't work.
    If there is an unportable way to bind a local bean to jndi, it might do for the time.
    The important thing would be, that there is no weblogic specific code within the application.
    So, solving it using weblogic-xml files would be best.
    This declaration
    <local-jndi-name>myapp/XBean/local</local-jndi-name>
    will come up with the same problems, I guess.
    Here's the code. We want the local interface extending the remote interface,
    so that the local beans can do all what the remote beans can do too.
    XRemote.java
    package test.server;
    import javax.ejb.Remote;
    @Remote
    public interface XRemote {
    String JNDI_NAME = "myapp/XBean/remote";
    void doXRemote();
    XLocal.java
    package test.server;
    import javax.ejb.Local;
    @Local
    public interface XLocal extends XRemote {
    String JNDI_NAME = "myapp/XBean/local";
    void doXLocal();
    XBean.java
    package test.server;
    import javax.ejb.Stateless;
    @Stateless
    public class XBean implements XLocal {
    @Override
    public void doXLocal() {
    System.out.println("doXLocal() called");
    @Override
    public void doXRemote() {
    System.out.println("doXRemote() called");
    weblogic-ejb-jar.xml
    <weblogic-ejb-jar
    xmlns="http://www.bea.com/ns/weblogic/10.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.bea.com/ns/weblogic/10.0 http://www.bea.com/ns/weblogic/10.0/weblogic-ejb-jar.xsd">
    <weblogic-enterprise-bean>
    <ejb-name>XBean</ejb-name>
    <jndi-name>myapp/XBean/remote</jndi-name>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    Client.java
    package test.client;
    import java.util.Properties;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import test.server.XRemote;
    public class Client {
    public static void main(String[] args) throws NamingException {
    InitialContext context = getInitialContext();
    XRemote xRemote = (XRemote) context.lookup(XRemote.JNDI_NAME);
    xRemote.doXRemote();
    private static InitialContext getInitialContext() throws NamingException {
    Properties properties = new Properties();
    properties.put(Context.PROVIDER_URL, "t3://localhost:7001");
    properties.put(Context.INITIAL_CONTEXT_FACTORY,
    "weblogic.jndi.WLInitialContextFactory");
    properties.put(Context.SECURITY_PRINCIPAL, "weblogic");
    properties.put(Context.SECURITY_CREDENTIALS, "weblogic");
    return new InitialContext(properties);
    }

    Hi,
    about how to specify jndi name of remote ejb, please refer to this link: http://forums.oracle.com/forums/thread.jspa?threadID=800314&tstart=1
    please note @JNDIName isn't an EJBGen annotation. its package name is weblogic.javaee.
    So far, based on the EJB spec, local ejb will not be bound to global JNDI. EJB3.1 specification is trying to specify the portable JNDI names including local EJBs, but it isn't published yet.
    local EJB is used within one application and ejb reference is used to lookup the local EJB. please refer to EJB specification about how to declare an EJB local reference. once it is declared, it can be looked up from the java:comp\env JNDI namespace.
    But, if the local client of the EJB isn't a JavaEE component, there won't be any declaration of ejb-local-ref. You may want to try remote access to the EJB from the non-JavaEE client.

  • Challenge: call local ejb from remote ejb on weblogic 9.2

    Hi ALL,
    How do I call to local ejb from remote ejb object. The jar file is deployed on weblogic server 9.2, if you want get it http://geocities.yahoo.com.br/lindembe/BEAProject.jar and the source code are http://geocities.yahoo.com.br/lindembe/BEAProject.zip. It is a sample app with two ejb that works so good on JBOSS, JOnAS, but BEA Weblogic.....
    The complete problem you watch http://forum.java.sun.com/thread.jspa?threadID=768718&messageID=4387570#4387570
    or
    http://forums.bea.com/bea/message.jspa?messageID=600043148&tstart=0

    Your code in SigemFacadeBean should just do:
    InitialContext ctx = new InitialContext();
    when you lookup the local EJB. (This will work on all app servers. There's no need to put an app-server specific intial context factory in your code.)
    Also, you can remove the jndi-name setting for the local ejb from your weblogic-ejb-jar.xml. jndi-name is only applied to remote ejbs.
    -- Rob
    WLS Blog http://dev2dev.bea.com/blog/rwoollen/

  • Local Referance tag in Sun one server

    Hi All,
    In my ejb-jar.xml file have one ejb in that i have local Ejb. How i can spacify in the sun-ejb-jar.xml.when i trying to lookup the local ejb i got name not found exception .where as jboss we have one tag i.e. <local-jndi-name>
    like wise we have any tag for refer the local ejb in sun-ejb-jar.xml.
    plz help me .
    Thank u.

    <ejb-local-ref>
                        <ejb-ref-name>ParametrosObjHomeLocal</ejb-ref-name>
                        <ejb-ref-type>Session</ejb-ref-type>
                        <local-home>
                             com.deceval.siidj.siidserver.ParametrosObjLocalHome
                        </local-home>
                        <local>
                             com.deceval.siidj.siidserver.ParametrosObjLocal
                        </local>
                        <ejb-link>ParametrosObjHome</ejb-link>
                   </ejb-local-ref>
    ejb-jar.xml
    after that lookup of this local ejb is
    public ParametrosObjLocal getParametroLocalSO() {
              ParametrosObjLocal local = null;
              try {
                   Context ctx = new InitialContext();
                   Object o = ctx.lookup("java:comp/env/ParametrosObjHomeLocal");
                   //ParametrosObjLocalHome o = (ParametrosObjLocalHome)ctx.lookup("java:comp/env/ParametrosObjHomeLocal");
                   ParametrosObjLocalHome helloHome = (ParametrosObjLocalHome) PortableRemoteObject
                   .narrow(o, ParametrosObjLocalHome.class);
                   local = (ParametrosObjLocal) helloHome.create();
              } catch (NamingException e) {
                   //mLog.error("NamingException: " + e.getMessage());
                   e.printStackTrace();
                   mLog.info("Changeing the Lookup ");
                   throw new GenericException(e);
              } catch (CreateException e) {
                   e.printStackTrace();
                   mLog.error("FinderException: " + e.getMessage());
                   throw new GenericException(e);
              return local;
    we should lookup the java:comp/env/ejbname

  • Fail to lookup jndi in EJB

    Hi,
    My application failed to lookup a JMS Object using JNDI lookup in EJB.
    The actual application flow is that a Servlet receive a request which
    then calls to an EJB
    where it loop up the JMS object to establish the message queue
    connection.
    It works with a simple Servlet which loop up the JMS Object without call
    to EJB.
    Does anyone known the possible reason causes the application failed to
    lookup the JMS Object?
    Thanks
    Avans
    the log is following
    The Status is :
    MQ java:comp/env/jms/theFactory
    MQjava:comp/env/jms/theFactoryjavax.naming.NameNotFoundException: Can't locate jms/theFactory
    at com.netscape.server.jndi.CompContext.resolveEnv(Unknown
    Source)
    at com.netscape.server.jndi.CompContext.lookup(Unknown Source)
    at com.netscape.server.jndi.java.javaURLContext.lookup(Unknown
    Source)
    at javax.naming.InitialContext.lookup(InitialContext.java:357)
    at
    com.hkex.common.mq.mqwrapper.MQReceiver.<init>(MQReceiver.java:109)
    at
    com.hkex.common.mq.mqwrapper.MQReceiverGroup.<init>(MQReceiverGroup.j
    ava:70)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.createReceivers(MQContainer.
    java:545)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.createMQObject(MQContainer.j
    ava:387)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.initMQConfig(MQContainer.jav
    a:360)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.<init>(MQContainer.java:93)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.<clinit>(MQContainer.java:63
    at
    com.hkex.common.mq.interfacewrapper.FuncParameter.setExpiryTime(FuncP
    arameter.java:270)
    at
    com.hkex.common.mq.interfacewrapper.MQHostAccess.invoke(MQHostAccess.
    java:336)
    at
    com.hkex.common.mq.interfacewrapper.MQHostAccess.syncInvoke(MQHostAcc
    ess.java:236)
    at
    com.hkex.arch.msg.ToHostMessage.sendToMQ(ToHostMessage.java:150)
    at
    com.hkex.arch.msg.DefaultHostInterface.sendToMQ(DefaultHostInterface.
    java:28)
    at
    com.hkex.arch.msg.MFMModuleBase.sendToMQ(MFMModuleBase.java:26)
    at
    com.hkex.arch.msg.MFMModuleBase.sendToMQ(MFMModuleBase.java:21)
    at
    com.hkex.cl.model.dao.mq.MFM_PXCLTL02.processEnquiryDisplayRequest(MF
    M_PXCLTL02.java:1676)
    at
    com.hkex.cl.model.dao.mq.SettlementInstructionDAO.SITLenquiryDisplay(
    SettlementInstructionDAO.java:279)
    at
    com.hkex.cl.model.SIServicesEJB.SITLenquiryDisplay(SIServicesEJB.java
    :680)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    com.hkex.cl.model.ejb_skel_com_hkex_cl_model_SIServicesEJB.SITLenquir
    yDisplay(ejb_skel_com_hkex_cl_model_SIServicesEJB.java:1176)
    at
    com.hkex.cl.model.ejb_kcp_skel_SIServices.SITLenquiryDisplay__com_hke
    x_cl_SIDetail__com_hkex_arch_base_CCASSUs__43836001(ejb_kcp_skel_SIServices.java
    :1094)
    at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
    at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
    at
    com.hkex.cl.model.ejb_kcp_stub_SIServices.SITLenquiryDisplay(ejb_kcp_
    stub_SIServices.java:1359)
    at
    com.hkex.cl.model.ejb_stub_SIServices.SITLenquiryDisplay(ejb_stub_SIS
    ervices.java:123)
    at
    com.hkex.cl.controller.SITLEnquiry.processQuery(SITLEnquiry.java:161)
    at
    com.hkex.arch.controller.base.HttpControllerAdvanced.list(HttpControl
    lerAdvanced.java:113)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.invokeActionHandler
    (HttpControllerBasic.java:1430)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.handleBusinessReque
    st(HttpControllerBasic.java:1309)
    at
    com.hkex.arch.controller.base.HttpControllerBasicExtended.handleBusin
    essRequest(HttpControllerBasicExtended.java:236)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.doMagic(HttpControl
    lerBasic.java:1168)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.doPost(HttpControll
    erBasic.java:1038)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.service(HttpControl
    lerBasic.java:1012)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at
    com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
    Source)
    at
    com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unkno
    wn Source)
    at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
    at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
    at com.kivasoft.thread.ThreadBasic.run(Native Method)
    at java.lang.Thread.run(Thread.java:479)
    MQ Error Msg : Can't locate jms/theFactory
    MQ Localized Msg: Can't locate jms/theFactory
    Resolved_Name():null
    UnResolved_Name():null
    Root Cause(): null
    Get Explaination():Can't locate jms/theFactory

    Hi,
    My application failed to lookup a JMS Object using JNDI lookup in EJB.
    The actual application flow is that a Servlet receive a request which
    then calls to an EJB
    where it loop up the JMS object to establish the message queue
    connection.
    It works with a simple Servlet which loop up the JMS Object without call
    to EJB.
    Does anyone known the possible reason causes the application failed to
    lookup the JMS Object?
    Thanks
    Avans
    the log is following
    The Status is :
    MQ java:comp/env/jms/theFactory
    MQjava:comp/env/jms/theFactoryjavax.naming.NameNotFoundException: Can't locate jms/theFactory
    at com.netscape.server.jndi.CompContext.resolveEnv(Unknown
    Source)
    at com.netscape.server.jndi.CompContext.lookup(Unknown Source)
    at com.netscape.server.jndi.java.javaURLContext.lookup(Unknown
    Source)
    at javax.naming.InitialContext.lookup(InitialContext.java:357)
    at
    com.hkex.common.mq.mqwrapper.MQReceiver.<init>(MQReceiver.java:109)
    at
    com.hkex.common.mq.mqwrapper.MQReceiverGroup.<init>(MQReceiverGroup.j
    ava:70)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.createReceivers(MQContainer.
    java:545)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.createMQObject(MQContainer.j
    ava:387)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.initMQConfig(MQContainer.jav
    a:360)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.<init>(MQContainer.java:93)
    at
    com.hkex.common.mq.mqwrapper.MQContainer.<clinit>(MQContainer.java:63
    at
    com.hkex.common.mq.interfacewrapper.FuncParameter.setExpiryTime(FuncP
    arameter.java:270)
    at
    com.hkex.common.mq.interfacewrapper.MQHostAccess.invoke(MQHostAccess.
    java:336)
    at
    com.hkex.common.mq.interfacewrapper.MQHostAccess.syncInvoke(MQHostAcc
    ess.java:236)
    at
    com.hkex.arch.msg.ToHostMessage.sendToMQ(ToHostMessage.java:150)
    at
    com.hkex.arch.msg.DefaultHostInterface.sendToMQ(DefaultHostInterface.
    java:28)
    at
    com.hkex.arch.msg.MFMModuleBase.sendToMQ(MFMModuleBase.java:26)
    at
    com.hkex.arch.msg.MFMModuleBase.sendToMQ(MFMModuleBase.java:21)
    at
    com.hkex.cl.model.dao.mq.MFM_PXCLTL02.processEnquiryDisplayRequest(MF
    M_PXCLTL02.java:1676)
    at
    com.hkex.cl.model.dao.mq.SettlementInstructionDAO.SITLenquiryDisplay(
    SettlementInstructionDAO.java:279)
    at
    com.hkex.cl.model.SIServicesEJB.SITLenquiryDisplay(SIServicesEJB.java
    :680)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    com.hkex.cl.model.ejb_skel_com_hkex_cl_model_SIServicesEJB.SITLenquir
    yDisplay(ejb_skel_com_hkex_cl_model_SIServicesEJB.java:1176)
    at
    com.hkex.cl.model.ejb_kcp_skel_SIServices.SITLenquiryDisplay__com_hke
    x_cl_SIDetail__com_hkex_arch_base_CCASSUs__43836001(ejb_kcp_skel_SIServices.java
    :1094)
    at com.kivasoft.ebfp.FPRequest.invokenative(Native Method)
    at com.kivasoft.ebfp.FPRequest.invoke(Unknown Source)
    at
    com.hkex.cl.model.ejb_kcp_stub_SIServices.SITLenquiryDisplay(ejb_kcp_
    stub_SIServices.java:1359)
    at
    com.hkex.cl.model.ejb_stub_SIServices.SITLenquiryDisplay(ejb_stub_SIS
    ervices.java:123)
    at
    com.hkex.cl.controller.SITLEnquiry.processQuery(SITLEnquiry.java:161)
    at
    com.hkex.arch.controller.base.HttpControllerAdvanced.list(HttpControl
    lerAdvanced.java:113)
    at java.lang.reflect.Method.invoke(Native Method)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.invokeActionHandler
    (HttpControllerBasic.java:1430)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.handleBusinessReque
    st(HttpControllerBasic.java:1309)
    at
    com.hkex.arch.controller.base.HttpControllerBasicExtended.handleBusin
    essRequest(HttpControllerBasicExtended.java:236)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.doMagic(HttpControl
    lerBasic.java:1168)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.doPost(HttpControll
    erBasic.java:1038)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:772)
    at
    com.hkex.arch.controller.base.HttpControllerBasic.service(HttpControl
    lerBasic.java:1012)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at
    com.netscape.server.servlet.servletrunner.ServletInfo.service(Unknown
    Source)
    at
    com.netscape.server.servlet.servletrunner.ServletRunner.execute(Unkno
    wn Source)
    at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
    at com.kivasoft.applogic.AppLogic.execute(Unknown Source)
    at com.kivasoft.thread.ThreadBasic.run(Native Method)
    at java.lang.Thread.run(Thread.java:479)
    MQ Error Msg : Can't locate jms/theFactory
    MQ Localized Msg: Can't locate jms/theFactory
    Resolved_Name():null
    UnResolved_Name():null
    Root Cause(): null
    Get Explaination():Can't locate jms/theFactory

  • Accessing the local interface of an EJB

    Hello.
    I am using Jdeveloper 11G and it's integrated application server. Using the Jdeveloper wizards, i created a simple stateless session EJB which has both a local and a remote interface (code listed below). I then used the "Create test client" option to create a simple test client.
    The way these classes and interfaces are set up by the wizards, i am using the remote interface. However, i would like to lookup the local interface and use that instead. But i just can't figure out how to lookup the local interface of the EJB. I have tried pretty much every variation i can think of but still no success. Is there anyone out there who can give me a hand? Is there a way to see the lookup name in the integrated WLS server?
    My remote interface looks like this:
    @Remote
    public interface SessionEJB {
    and the remote one:
    @Local
    public interface SessionEJBLocal {
    And my EJB class:
    @Stateless(name = "SessionEJB", mappedName = "NewTestApplication-SessionEJB")
    public class SessionEJBBean implements SessionEJBLocal, SessionEJB {
    My test client does this lookup that works fine:
    public class SessionEJBClient1 {
    public static void main(String [] args) {
    try {
    final Context context = getInitialContext();
    SessionEJB sessionEJB = (SessionEJB)context.lookup("NewTestApplication-SessionEJB#model.SessionEJB");
    }

    Hi,
    Your lookup in your client would look something like
    SessionEJBLocal sessionEJB = (SessionEJBLocal)context.lookup("NewTestApplication-SessionEJB#SessionEJBLocal ");
    The part before the # in the lookup is your mapped name from your session facade, and after the # you have your package, like com.oracle. and ending it with your local interface name.
    Just remember that if your client is not actually running inside the application server container (which with the generated test client it wouldn't be, its a java standalone app with a main method), you will not be able to use the local interface, and you would have to look up remote interface. This can be done in exactly the same way as the above line of code, just replacing the local interface parts with the remote interface's. Hope this helps.
    Drikus
    Edited by: Drikus Britz on Jun 3, 2009 8:46 PM
    Edited by: Drikus Britz on Jun 3, 2009 8:50 PM

  • Using Local EJB obect in web container that installed in on the same Web AS

    we can use the local ejb object in the application that runs in same JVM.
    The Web Container and EJB Container run in the same JVM when Web AS installed as Minimum Cluster Installation(one cluster node).
    But, what happened if we install the Web AS as Large Cluster Installation? Can we still use the local ejb objects in the Web Container?
    Best regards,
    Raja
    Message was edited by: Raja Nasrallah

    Hi Raja,
    Yes you can. When you use local EJB objects there's no remote communication and the web container will find them in the EJB container of the local cluster node. For the application providers this is transparent - they shouldn't care about the configuration of the cluster.
    Best regards,
    Vladimir
    PS: Please consider <a href="https://www.sdn.sap.com/sdn/index.sdn?page=crp_help.htm#lostme">rewarding points</a> for helpful answers.

  • Trying to look up a LOCAL EJB (Weblogic 8.1)

    Hi,
    I'm trying to look up a LOCAL EJB (Weblogic 8.1):
    try
    Context ct = new InitialContext();
    Object o = ct.lookup("*ejbSecurityDataLocalHelper*");
    catch(...)
    I systematically get the following exception:
    Caused by: javax.naming.LinkException: Root exception is javax.naming.NameNotFoundException: While trying to look up /app/ejb/AEX_JRK_security_EJB.jar#SecurityDataHelper/local-home in /app/ejb/ISL_MSD_mktdata_general_EJB.jar#MarketDataGeneralManager.; remaining name '/app/ejb/AEX_JRK_security_EJB/jar#SecurityDataHelper/local-home'; Link Remaining Name: 'java:app/ejb/AEX_JRK_security_EJB.jar#SecurityDataHelper/local-home'
    Where SecurityDataHelper is the Local EJB, who's called from MarketDataGeneralManager EJB.
    I realized that the Weblogic JNDI tree shows a red dot next to the name SecurityDataHelperLocalHome: as the other names are not red, I could guess there was something wrong at deployment... buy deployment logs are OK. When I tryied to test the EJB via the Weblogic console there was a message "The EJB SecurityDataHelper has not been tested successfully. There was a problem determining the JNDI Name of the given bean. "
    My ejb-jar.xml looks like this:
    <session>
    <ejb-name>SecurityDataHelper</ejb-name>
    <local-home>com.MyLocalHome</local-home>
    <local>com.MyLocalObject</local>
    <ejb-class>com.MyBean</ejb-class>
    <session-type>Stateless</session-type>
    <transaction-type>Container</transaction-type>
    </session>
    and my weblogic-ejb-jar.xml:
    <weblogic-enterprise-bean>
    <ejb-name>SecurityDataHelper</ejb-name>
    <stateless-session-descriptor>
    </stateless-session-descriptor>
    <enable-call-by-reference>True</enable-call-by-reference>
    <local-jndi-name>ejbSecurityDataLocalHelper</local-jndi-name>
    </weblogic-enterprise-bean>
    What I am doing wrong???

    Hi Dan,
    As u have targeted the ConnectionFactory to "soa_server1" which is running on "realHostName:7001" ....Can u please check from the AdminConsole that the JNDI name ""jms/b2b/B2BQueueConnectionFactory" is present in the JNDI Tree?
    AdminConsole---->Servers---soa_server1 (click) ---> in this general configuration page you will see a link "View JNDI Tree" please ckick on that link to see the JNDI tree entries.
    If you dont see any JNDI entry there then it means there is something wrong while setting up the Connection Factory in that case please refer to the Screenshots of Creating and Targeting the Connection Factory: *http://middlewaremagic.com/weblogic/?p=1987*
    Thanks
    Jay SenSharma
    *http://middlewaremagic.com/weblogic (Middleware magic Is Here)*

  • Error in Workflow Services API acquireTask when using local EJB protocol

    Hi,
    I have a stateful EJB which calls the workflow services API acquireTask to acquire a task. The task was retrieved using a queryTask API call. However, the acquireTask API fails with an exception at TaskServiceLocalClient.java:1152, as listed below in the log, with no clear message as to why it had failed.
    The stateful EJB calls to workflow API using the local EJB protocol.
    The version of SOA suite running is 10.1.3.1 with Oracle XE 10.2.0.1 as its dehydration store on Windows XP Professional version 2002.
    Just wondering if anyone has encountered this problem or know what might have caused this.
    Exception trace is below:
    /09/2007 09:23:31 oracle.j2ee.rmi.RMIMessages EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER
    WARNING: Exception returned by remote server: {0}
    au.com.unico.server.BPELException
    at oracle.bpel.services.workflow.task.client.TaskServiceLocalClient.acquireTask(TaskServiceLocalClient.java:1152)
    at au.com.unico.server.WorkflowBean.acquireTask(Unknown Source)
    at au.com.unico.server.WorkflowBean.fetchTask(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.SetContextActionInterceptor.invoke(SetContextActionInterceptor.java:44)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
    at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
    at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
    at com.evermind.server.ejb.StatefulSessionEJBObject.OC4J_invokeMethod(StatefulSessionEJBObject.java:844)
    at Workflow_RemoteProxy_2ooecl0.fetchTask(Unknown Source)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at com.evermind.server.rmi.RmiMethodCall.run(RmiMethodCall.java:53)
    at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303)
    at java.lang.Thread.run(Thread.java:595)

    Hi Nicolas,
    It turned out I had the wrong version of "xml.jar" on the classpath. I have swapped the incorrect jar for a correct one and changed my code to use XMLUtil.createDocument(); and now everything runs smoothly.
    Thank you very much for your helpful advice.
    /emil

Maybe you are looking for