JNDI lookup on a specific server node

Hi experts
I am facing the following issue, we are loading data from ECC tables on PI JAVA memory to improve performance at runtime, this is done by a JCO,
it works fine within one Java node. But when we tested it in Productive system (with 2 java nodes) it failed because data is stored in just one Java node, so if the message does not go through
that node it does not find that data.
This is part ofe the code from the UDF where we are loading data to java memory:
props.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
*                         props.put(javax.naming.Context.PROVIDER_URL, "sapms://localhost:8110     ");*
*                         props.put("domain", "true");*
And this is part of the code from the UDF where we are getting data from memory
javax.naming.Context ctx = null;
*          java.util.Hashtable props = new java.util.Hashtable(1);*
*          props.put("domain", "true");*
*          props.put(javax.naming.Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");*
                                                                                props.put(javax.naming.Context.PROVIDER_URL, "sapms://localhost:8110");
Can someone give me some light about how to send data to both nodes or how to do the data lookup into a specific node??
Thanks in advanced.
Emmanuel

Hi,
I guess what you are trying to achieve is to build a cache of ECC data in PI memory. In this case you have to maintain local cache of the data on each server node. Hopefully the amount of memory required will not impact the system stability.
Regarding the lookup of different server node, although it is technically possible, you need to bind a remote object in the JNDI and use costly remote communication to transfer the data between the server nodes.
I guess you also have to think of some kind of update / eviction strategy for your cache.
Hope this helps!
Best Regards,
Dimitar

Similar Messages

  • How do i login to a Specific Server Node

    We have three Server nodes in our production cluster for the Portal. We deployed a .ear file for custom webdynpro development. SDM during the the Deplyment should have deployed the .ear file on the server nodes. But it looks like the .ear file was not deployed on some server nodes.
    My problem i do not know a way whyere i can specifically login to the specific Server node to check the Appliation.
    My end users are getting Errors and i can not see them becuase i am not logged in to the same server node.
    Any help is Appreciated.
    Sudheer.

    One way that I achieve this is by modifying the saplb_* cookie in the request. You can use firefox cookie editor addon to modify the cookie before a request is sent.
    For e.g. your saplb_*  cookie might have this value (J2EE31487700)31487750
    here the node is 0 if you change the last digit to one it will go to node 1 so the value will be (J2EE31487700)31487751
    Hope this helps.
    To make sure the node is changed to 1, you can check the response cookie and it should contain a trailing 1.

  • How to connect to a specific server node?

    Hi,
    For support purposes, I would need to know how I could force the connection to a specific server node?
    For example, I have the following info in my jcmon:
    Idx
    Name
    Cluster
    Debug
    HTTP
    HTTPS
    P4
    Telnet
    SDM
    Id
    Port
    Port
    Port
    Port
    Port
    Port
    0
    dispatcher
    17313700
    50000
    50100
    50101
    50104
    50108
    0
    1
    server0
    17313750
    50121
    0
    0
    0
    0
    0
    2
    server2
    17313752
    50131
    0
    0
    0
    0
    0
    3
    SDM
    0
    50003
    50119
    0
    0
    0
    50118
    I would like to be able to choose which specific node I'm to use.
    Thank you,
    Jerome M.

    Jerome,
    If by "specific server node" you mean the chice between server0 or server2, there is no choice.
    You can connect only to dispatcher via dispatcher port.
    Dispatcher will make sure your subsequent requests will be processed by the same server node, but, to my best knowledge, it is not possible to tell dispatcher what server node to use for initial connection.
    Why do you need this option?
    Maybe we can suggest you some other working solution.
    Regards,
    Slava

  • Connecting specific server node from portal

    Hello,
    I am trying to access specific server node with URL "http://<Server>:<Port Number>/irj/portal;sapj2ee_irj=<Node ID>"
    I am able to access portal page through the above URL, but even while entering incorrect Node ID, portal page is accessible which should not happen ideally.
    I am trying to configure an alerting mechanism so that I can know which server node is up and whiich one is down when users try accessing portal.
    Please provide me steps to access server node through portal and also if there is some specific portal parameter which controls the above mentioned anomaly.
    Regards,
    Anuradha

    Hi Anuradha,
    Please use something like:
    http://<Server>:<Port Number>/irj/servlet/prt/portal/prtroot/com.sap.portal.navigation.portallauncher.default;sapj2ee_*=<NodeID>.
    You can use
    java_scriptj<colon>alertOpenparentesisdocument<dot>cookiecloseparentesis
    to find out if you connected to the proper node.  Note the sapj2ee_* parameter is optional so if the value provided is not correct it will connect you to one of the available nodes.  Remove the underscore from java_script.
    Replace:
    java_script with javascript
    <colon> with :
    Openparentesis with (
    Closeparentesis with )
    SCN would not let me post the symbols
    Best regards,
    Duncan
    Edited by: Duncan Speidel on Nov 22, 2011 11:20 PM

  • JNDI Lookup failing in specific instances

    Hi All
    We have an application deployed to OC4J 9.0.4.1 - the application consists of a collection of local/remote session beans and nearly 100 entity beans.
    We are calling a local session bean and local entity bean from a remote SB. Now in most cases our JNDI lookups work fine, however some specific ones do not.
    The following are our JNDI specific properties :
    "jndiproviderclass"
    com.evermind.server.rmi.RMIInitialContextFactory</property"url"
    ormi://HOSTNAME:23792/Twe
    "security_principal"
    admin
    "security_credentials"
    welcome
    If anyone has any ideas why some specific deployments would not work, I can provide more details.
    Thanks

    Hi Jon,
    I got it working a couple of days ago. First I tried manually but could not get it working, then I found this description of how to do it using the Enterprise Manager and then it worked. Check: http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28994/adptr_db.htm#BDCFIEDJ
    I defined a connection pool, a datasource and connection factory. In 6 step you should use a DbAdapter instead of an AppsAdapter, and don't put anything in dataSourceName. I choose No Connection Pool for the connection factory.
    Regards Pete

  • JNDI lookup using a proxy server

    Hi,
    I'm trying to use a weblogic server as a proxy server for a cluster of
    weblogic servers. The static and dynamic content delivery works fine but
    when I try to do a JNDI lookup from an applet client, I get a name not
    resolved exception. I guess, it happens because the proxy server tries to
    resolve the name from it's JNDI tree, whereas I expect it to forward this
    request to one of the servers in the cluster. Is this possible? If it is, do
    I need to set up some parameters in the proxy server? If not, can I do this
    myself by writing a name resolution class which in turn will forward the
    request to one of the servers in the cluster?
    Any help would be greatly appreciated.
    thanks
    - sanjay

    when u say "cluster of weblogic servers"..u mean the weblogic`s inbuilt
    cluster..
    the reason i ask is weblogic`s cluster do provide JNDI clustering too by using
    cluster-wide naming tree..
    Sanjay Aggarwal wrote:
    Hi,
    I'm trying to use a weblogic server as a proxy server for a cluster of
    weblogic servers. The static and dynamic content delivery works fine but
    when I try to do a JNDI lookup from an applet client, I get a name not
    resolved exception. I guess, it happens because the proxy server tries to
    resolve the name from it's JNDI tree, whereas I expect it to forward this
    request to one of the servers in the cluster. Is this possible? If it is, do
    I need to set up some parameters in the proxy server? If not, can I do this
    myself by writing a name resolution class which in turn will forward the
    request to one of the servers in the cluster?
    Any help would be greatly appreciated.
    thanks
    - sanjay

  • Unable to do JNDI lookup in JDeveloper-Weblogic server

    Dear All,
    I'm getting the below error when i try to call stateless EJB which is deployed in Weblogic 10.3 from the java stand alone class.
    javax.naming.CommunicationException [Root exception is java.net.ConnectException: t3://localhost:7101: Destination unreachable; nested exception is:
         java.io.IOException: Empty server reply; No available router to destination]
         at weblogic.jndi.internal.ExceptionTranslator.toNamingException(ExceptionTranslator.java:40)
         at weblogic.jndi.WLInitialContextFactoryDelegate.toNamingException(WLInitialContextFactoryDelegate.java:788)
         at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:366)
         at weblogic.jndi.Environment.getContext(Environment.java:315)
         at weblogic.jndi.Environment.getContext(Environment.java:285)
         at weblogic.jndi.WLInitialContextFactory.getInitialContext(WLInitialContextFactory.java:117)
         at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
         at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
         at javax.naming.InitialContext.init(InitialContext.java:223)
         at javax.naming.InitialContext.<init>(InitialContext.java:197)
         at HelloWorldClient.main(HelloWorldClient.java:21)
    Caused by: java.net.ConnectException: t3://localhost:7101: Destination unreachable; nested exception is:
         java.io.IOException: Empty server reply; No available router to destination
         at weblogic.rjvm.RJVMFinder.findOrCreateInternal(RJVMFinder.java:216)
         at weblogic.rjvm.RJVMFinder.findOrCreate(RJVMFinder.java:170)
         at weblogic.rjvm.ServerURL.findOrCreateRJVM(ServerURL.java:153)
         at weblogic.jndi.WLInitialContextFactoryDelegate$1.run(WLInitialContextFactoryDelegate.java:345)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:146)
         at weblogic.jndi.WLInitialContextFactoryDelegate.getInitialContext(WLInitialContextFactoryDelegate.java:340)
         ... 8 more
    Caused by: java.rmi.ConnectException: Destination unreachable; nested exception is:
         java.io.IOException: Empty server reply; No available router to destination
         at weblogic.rjvm.ConnectionManager.bootstrap(ConnectionManager.java:470)
         at weblogic.rjvm.ConnectionManager.bootstrap(ConnectionManager.java:321)
         at weblogic.rjvm.RJVMManager.findOrCreateRemoteInternal(RJVMManager.java:254)
         at weblogic.rjvm.RJVMManager.findOrCreate(RJVMManager.java:197)
         at weblogic.rjvm.RJVMFinder.findOrCreateRemoteServer(RJVMFinder.java:238)
         at weblogic.rjvm.RJVMFinder.findOrCreateRemoteCluster(RJVMFinder.java:316)
         at weblogic.rjvm.RJVMFinder.findOrCreateInternal(RJVMFinder.java:205)
         ... 14 more
    The Client code is :
    Hashtable<String, String> env = new Hashtable<String, String>();
    env.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
    env.put(Context.SECURITY_PRINCIPAL,"weblogic");
    env.put(Context.SECURITY_CREDENTIALS,"weblogic123");
    env.put(Context.PROVIDER_URL,"t3://localhost:7101");
    Context ctx = new InitialContext(env); // Error throws here.
    System.out.println("Initial Context created");
    I'm able to login localhost as admin console and see the JNDI name binding. But dont know why it throws this error.
    Kindly help me out to resolve this issue.

    Sir,
    First of all pls try giving jdeveloper version...
    can you try other combinations
    like instead of 127.0.0.1, use localhost, actual ip of PC. Because when you are using 11.1.2.x.x version then before creating default domain jdeveloper asks the IP address to bind and make server accessible from that IP...
    At-Last if problem is not solved then
    Try this:
    1) start integrated weblogic server from jdeveloper by selecting Run -> Start Server Instance
    2) when weblogic is up go to http://localhost:7101/console
    3) login (username weblogic password weblogic1), go to services, go to jdbc and create your datasource
    4) shut weblogic down
    5) goto C:\Documents and Settings\<your username>\Application Data\JDeveloper\system11.1.1.2.36.55.36\DefaultDomain\bin the path may be different depending on your version of jdeveloper
    6) edit setDomainEnv.cmd and change "set WLS_JDBC_REMOTE_ENABLED=-Dweblogic.jdbc.remoteEnabled=true"
    7) go back to jdev and start weblogic as above

  • JNDI Lookup for multiple server instances with multiple cluster nodes

    Hi Experts,
    I need help with retreiving log files for multiple server instances with multiple cluster nodes. The system is Netweaver 7.01.
    There are 3 server instances all instances with 3 cluster nodes.
    There are EJB session beans deployed on them to retreive the log information for each server node.
    In the session bean there is a method:
    public List getServers() {
      List servers = new ArrayList();
      ClassLoader saveLoader = Thread.currentThread().getContextClassLoader();
      try {
       Properties prop = new Properties();
       prop.setProperty(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
       prop.put(Context.SECURITY_AUTHENTICATION, "none");
       Thread.currentThread().setContextClassLoader((com.sap.engine.services.adminadapter.interfaces.RemoteAdminInterface.class).getClassLoader());
       InitialContext mInitialContext = new InitialContext(prop);
       RemoteAdminInterface rai = (RemoteAdminInterface) mInitialContext.lookup("adminadapter");
       ClusterAdministrator cadm = rai.getClusterAdministrator();
       ConvenienceEngineAdministrator cea = rai.getConvenienceEngineAdministrator();
       int nodeId[] = cea.getClusterNodeIds();
       int dispatcherId = 0;
       String dispatcherIP = null;
       String p4Port = null;
       for (int i = 0; i < nodeId.length; i++) {
        if (cea.getClusterNodeType(nodeId[i]) != 1)
         continue;
        Properties dispatcherProp = cadm.getNodeInfo(nodeId[i]);
        dispatcherIP = dispatcherProp.getProperty("Host", "localhost");
        p4Port = cea.getServiceProperty(nodeId[i], "p4", "port");
        String[] loc = new String[3];
        loc[0] = dispatcherIP;
        loc[1] = p4Port;
        loc[2] = null;
        servers.add(loc);
       mInitialContext.close();
      } catch (NamingException e) {
      } catch (RemoteException e) {
      } finally {
       Thread.currentThread().setContextClassLoader(saveLoader);
      return servers;
    and the retreived server information used here in another class:
    public void run() {
      ReadLogsSession readLogsSession;
      int total = servers.size();
      for (Iterator iter = servers.iterator(); iter.hasNext();) {
       if (keepAlive) {
        try {
         Thread.sleep(500);
        } catch (InterruptedException e) {
         status = status + e.getMessage();
         System.err.println("LogReader Thread Exception" + e.toString());
         e.printStackTrace();
        String[] serverLocs = (String[]) iter.next();
        searchFilter.setDetails("[" + serverLocs[1] + "]");
        Properties prop = new Properties();
        prop.put(Context.INITIAL_CONTEXT_FACTORY, "com.sap.engine.services.jndi.InitialContextFactoryImpl");
        prop.put(Context.PROVIDER_URL, serverLocs[0] + ":" + serverLocs[1]);
        System.err.println("LogReader run [" + serverLocs[0] + ":" + serverLocs[1] + "]");
        status = " Reading :[" + serverLocs[0] + ":" + serverLocs[1] + "] servers :[" + currentIndex + "/" + total + " ] ";
        prop.put("force_remote", "true");
        prop.put(Context.SECURITY_AUTHENTICATION, "none");
        try {
         Context ctx = new InitialContext(prop);
         Object ob = ctx.lookup("com.xom.sia.ReadLogsSession");
         ReadLogsSessionHome readLogsSessionHome = (ReadLogsSessionHome) PortableRemoteObject.narrow(ob, ReadLogsSessionHome.class);
         status = status + "Found ReadLogsSessionHome ["+readLogsSessionHome+"]";
         readLogsSession = readLogsSessionHome.create();
         if(readLogsSession!=null){
          status = status + " Created  ["+readLogsSession+"]";
          List l = readLogsSession.getAuditLogs(searchFilter);
          serverLocs[2] = String.valueOf(l.size());
          status = status + serverLocs[2];
          allRecords.addAll(l);
         }else{
          status = status + " unable to create  readLogsSession ";
         ctx.close();
        } catch (NamingException e) {
         status = status + e.getMessage();
         System.err.println(e.getMessage());
         e.printStackTrace();
        } catch (CreateException e) {
         status = status + e.getMessage();
         System.err.println(e.getMessage());
         e.printStackTrace();
        } catch (IOException e) {
         status = status + e.getMessage();
         System.err.println(e.getMessage());
         e.printStackTrace();
        } catch (Exception e) {
         status = status + e.getMessage();
         System.err.println(e.getMessage());
         e.printStackTrace();
       currentIndex++;
      jobComplete = true;
    The application is working for multiple server instances with a single cluster node but not working for multiple cusltered environment.
    Anybody knows what should be changed to handle more cluster nodes?
    Thanks,
    Gergely

    Thanks for the response.
    I was afraid that it would be something like that although
    was hoping for
    something closer to the application pools we use with IIS to
    isolate sites
    and limit the impact one badly behaving one can have on
    another.
    mmr
    "Ian Skinner" <[email protected]> wrote in message
    news:fe5u5v$pue$[email protected]..
    > Run CF with one instance. Look at your processes and see
    how much memory
    > the "JRun" process is using, multiply this by number of
    other CF
    > instances.
    >
    > You are most likely going to end up on implementing a
    "handful" of
    > instances versus "dozens" of instance on all but the
    beefiest of servers.
    >
    > This can be affected by how much memory each instance
    uses. An
    > application that puts major amounts of data into
    persistent scopes such as
    > application and|or session will have a larger foot print
    then a leaner
    > application that does not put much data into memory
    and|or leave it there
    > for a very long time.
    >
    > I know the first time we made use of CF in it's
    multi-home flavor, we went
    > a bit overboard and created way too many. After nearly
    bringing a
    > moderate server to its knees, we consolidated until we
    had three or four
    > or so IIRC. A couple dedicated to to each of our largest
    and most
    > critical applications and a couple general instances
    that ran many smaller
    > applications each.
    >
    >
    >
    >
    >

  • Local jndi lookup - present in 1 appln, lookup in 2nd appln (same server)

    Hi,
    I have deployed 2 applications ( A.ear, B.ear ) on the same server.
    There is ejb( has only local interface no remote interface ) which is present in A.ear.
    Now I want to do a local jndi lookup of the ejb in 2nd application (B.ear )
    Can we do this in weblogic ? Any ideas
    I have an annotation like this in the ejb :
    @Stateless(name = "DisConfigManager", mappedName = "DisConfigManagerImpl")
    @Local
    Regards,
    Harsha

    Harsha,
    I'm not very knowledgeable on granular details of the EJB specification, but I don't think local ejbs are accessible to other applications.
    Consider this snippet from this old OReilly link:
    http://onjava.com/pub/a/onjava/2004/11/03/localremote.html
    Before you start running to implement local client view into your application, you need to be aware of some restrictions. Local client view can only be accessed:
    When enterprise beans are packaged within the same EJB-JAR package.
    When enterprise beans are packaged within different EJB-JAR packages, but everything is still packaged within the same application's EAR package.
    When a web component in a WAR file is packaged within the same application's EAR package.
    Local client view cannot be accessed:
    When an EJB or web component is packaged in a different application's EAR packages.
    When a web component is deployed in a web container, and EJBs are deployed in an EJB container, and these containers are separated (even if they are running on the same machine).

  • JNDI lookup on clustered server

              I am very new to clustering Weblogic servers, and I'm lost. Here is what my config.xml
              file looks like:
              <?xml version="1.0" encoding="UTF-8"?>
              <Domain ConfigurationVersion="8.1.0.0" Name="mydomain">
              <Cluster MulticastAddress="237.0.0.1" MulticastPort="8035" Name="DomainCluster"/>
              <Server ListenAddress="" ListenPort="8031" Machine="Machine1"
              Name="DomainAdmin" NativeIOEnabled="true" ServerVersion="8.1.0.0" StdoutEnabled="false">
              <SSL Enabled="true" HostnameVerificationIgnored="false"
              IdentityAndTrustLocations="KeyStores" ListenPort="8032" Name="DomainAdmin"/>
              <Log FileCount="1" FileTimeSpan="72" Name="DomainAdmin"
              NumberOfFilesLimited="true" RotationType="byTime"/>
              </Server>
              <Server IIOPEnabled="false" ListenPort="80" Machine="Machine1"
              Name="DomainProxy" NativeIOEnabled="true" StdoutEnabled="false">
              <SSL Enabled="true" IdentityAndTrustLocations="KeyStores"
              ListenPort="443" Name="DomainProxy"/>
              <Log FileCount="1" FileTimeSpan="72" Name="DomainProxy"
              NumberOfFilesLimited="true" RotationType="byTime"/>
              <ExecuteQueue Name="weblogic.kernel.Default" ThreadCount="100"/>
              </Server>
              <Server Cluster="DomainCluster" DomainLogFilter="DomainLogFilter"
              IIOPEnabled="true" ListenPort="8035" Machine="Machine1"
              Name="DomainAppServer1a" NativeIOEnabled="true"
              ServerVersion="8.1.1.0" StdoutEnabled="false">
              <SSL Enabled="true" IdentityAndTrustLocations="KeyStores"
              ListenPort="8036" Name="DomainAppServer1a"/>
              <Log FileCount="1" FileTimeSpan="72" Name="DomainAppServer1a"
              NumberOfFilesLimited="true" RotationType="byTime"/>
              <ExecuteQueue Name="weblogic.kernel.Default" ThreadCount="50"/>
              </Server>
              <Server Cluster="DomainCluster" DomainLogFilter="DomainLogFilter"
              IIOPEnabled="false" ListenPort="8037" Machine="Machine1"
              Name="DomainAppServer1b" NativeIOEnabled="true" StdoutEnabled="false">
              <SSL Enabled="true" IdentityAndTrustLocations="KeyStores"
              ListenPort="8038" Name="DomainAppServer1b"/>
              <Log FileCount="1" FileTimeSpan="72" Name="DomainAppServer1b"
              NumberOfFilesLimited="true" RotationType="byTime"/>
              <ExecuteQueue Name="weblogic.kernel.Default" ThreadCount="50"/>
              </Server>
              <MigratableTarget Cluster="DomainCluster"
              Name="DomainAppServer1a (migratable)"
              Notes="This is a system generated default migratable target for a server.
              Do not delete manually." UserPreferredServer="DomainAppServer1a"/>
              <MigratableTarget Cluster="DomainCluster"
              Name="DomainAppServer1b (migratable)"
              Notes="This is a system generated default migratable target for a server.
              Do not delete manually." UserPreferredServer="DomainAppServer1b"/>
              <UnixMachine Name="Machine1" PostBindGID="domain"
              PostBindGIDEnabled="true" PostBindUID="DOMAIN" PostBindUIDEnabled="true">
              <NodeManager ListenAddress="" ListenPort="8033" Name="Machine1"/>
              </UnixMachine>
              <JMSServer Name="DomainJMSServer1a" Store="DomainJMSFileStore1a" Targets="DomainAppServer1a">
              <JMSTopic CreationTime="..."
              JNDIName="topic.someTopic" Name="someTopic" StoreEnabled="false"/>
              </JMSServer>
              <JMSServer Name="DomainJMSServer1b" Store="DomainJMSFileStore1b" Targets="DomainAppServer1b"/>
              <DomainLogFilter Name="DomainLogFilter" SeverityLevel="1"/>
              <Security Name="Domain" PasswordPolicy="wl_default_password_policy"
              Realm="wl_default_realm" RealmSetup="true"/>
              <EmbeddedLDAP
              Credential="..." Name="Domain"/>
              <SecurityConfiguration
              Credential="..."
              Name="Domain" RealmBootStrapVersion="1"/>
              <Realm FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
              <FileRealm Name="wl_default_file_realm"/>
              <PasswordPolicy Name="wl_default_password_policy"/>
              <JDBCConnectionPool ConnectionCreationRetryFrequencySeconds="60"
              DriverName="oracle.jdbc.driver.OracleDriver" MaxCapacity="5"
              Name="domainPOOL" Password="..."
              Properties="..." ShrinkFrequencySeconds="18000"
              Targets="DomainCluster" TestConnectionsOnCreate="true"
              TestConnectionsOnRelease="true" TestConnectionsOnReserve="true"
              TestFrequencySeconds="300" TestTableName="DUAL" URL="..."/>
              <JDBCTxDataSource JNDIName="domainSource" Name="domainSource"
              PoolName="domainPOOL" Targets="DomainCluster"/>
              <Application Name="MyDomain" Path="domain.ear"
              StagingMode="nostage" TwoPhase="true">
              <EJBComponent Name="domainejb" Targets="DomainCluster" URI="domainEjb.jar"/>
              </Application>
              </Domain>
              As you can, I have two servers configured in my DomainCluster. My EJB, domainejb,
              is tied to
              this cluster. I can't seem to do a JNDI lookup of this EJB, or the JMS Topic
              that I've created.
              When I attempt to do the lookup (from a client on the local machine) using the
              URL
              t3://localhost:8031, I get a NameNotFound Exception. This makes sense, because
              the
              Admin server isn't a part of the cluster. However, when I do the lookup using
              t3://localhost:8035, I get an exception that states that it could not connect
              to a host. I have
              insured that the server at this port is running, and the EJB is located in it's
              JNDI tree.
              I am stumped and could really use someone's help. Please advice.
              Thanks, Joel
              

              Prasad Peddada <[email protected]> wrote:
              >Joel wrote:
              >> I am very new to clustering Weblogic servers, and I'm lost. Here is
              >what my config.xml
              >> file looks like:
              >>
              >> <?xml version="1.0" encoding="UTF-8"?>
              >> <Domain ConfigurationVersion="8.1.0.0" Name="mydomain">
              >> <Cluster MulticastAddress="237.0.0.1" MulticastPort="8035" Name="DomainCluster"/>
              >> <Server ListenAddress="" ListenPort="8031" Machine="Machine1"
              >> Name="DomainAdmin" NativeIOEnabled="true" ServerVersion="8.1.0.0"
              >StdoutEnabled="false">
              >> <SSL Enabled="true" HostnameVerificationIgnored="false"
              >> IdentityAndTrustLocations="KeyStores" ListenPort="8032"
              >Name="DomainAdmin"/>
              >> <Log FileCount="1" FileTimeSpan="72" Name="DomainAdmin"
              >> NumberOfFilesLimited="true" RotationType="byTime"/>
              >> </Server>
              >> <Server IIOPEnabled="false" ListenPort="80" Machine="Machine1"
              >> Name="DomainProxy" NativeIOEnabled="true" StdoutEnabled="false">
              >> <SSL Enabled="true" IdentityAndTrustLocations="KeyStores"
              >> ListenPort="443" Name="DomainProxy"/>
              >> <Log FileCount="1" FileTimeSpan="72" Name="DomainProxy"
              >> NumberOfFilesLimited="true" RotationType="byTime"/>
              >> <ExecuteQueue Name="weblogic.kernel.Default" ThreadCount="100"/>
              >> </Server>
              >> <Server Cluster="DomainCluster" DomainLogFilter="DomainLogFilter"
              >> IIOPEnabled="true" ListenPort="8035" Machine="Machine1"
              >> Name="DomainAppServer1a" NativeIOEnabled="true"
              >> ServerVersion="8.1.1.0" StdoutEnabled="false">
              >> <SSL Enabled="true" IdentityAndTrustLocations="KeyStores"
              >> ListenPort="8036" Name="DomainAppServer1a"/>
              >> <Log FileCount="1" FileTimeSpan="72" Name="DomainAppServer1a"
              >> NumberOfFilesLimited="true" RotationType="byTime"/>
              >> <ExecuteQueue Name="weblogic.kernel.Default" ThreadCount="50"/>
              >> </Server>
              >> <Server Cluster="DomainCluster" DomainLogFilter="DomainLogFilter"
              >> IIOPEnabled="false" ListenPort="8037" Machine="Machine1"
              >> Name="DomainAppServer1b" NativeIOEnabled="true" StdoutEnabled="false">
              >> <SSL Enabled="true" IdentityAndTrustLocations="KeyStores"
              >> ListenPort="8038" Name="DomainAppServer1b"/>
              >> <Log FileCount="1" FileTimeSpan="72" Name="DomainAppServer1b"
              >> NumberOfFilesLimited="true" RotationType="byTime"/>
              >> <ExecuteQueue Name="weblogic.kernel.Default" ThreadCount="50"/>
              >> </Server>
              >> <MigratableTarget Cluster="DomainCluster"
              >> Name="DomainAppServer1a (migratable)"
              >> Notes="This is a system generated default migratable target
              >for a server.
              >> Do not delete manually." UserPreferredServer="DomainAppServer1a"/>
              >> <MigratableTarget Cluster="DomainCluster"
              >> Name="DomainAppServer1b (migratable)"
              >> Notes="This is a system generated default migratable target
              >for a server.
              >> Do not delete manually." UserPreferredServer="DomainAppServer1b"/>
              >> <UnixMachine Name="Machine1" PostBindGID="domain"
              >> PostBindGIDEnabled="true" PostBindUID="DOMAIN" PostBindUIDEnabled="true">
              >> <NodeManager ListenAddress="" ListenPort="8033" Name="Machine1"/>
              >> </UnixMachine>
              >> <JMSServer Name="DomainJMSServer1a" Store="DomainJMSFileStore1a"
              >Targets="DomainAppServer1a">
              >> <JMSTopic CreationTime="..."
              >> JNDIName="topic.someTopic" Name="someTopic" StoreEnabled="false"/>
              >> </JMSServer>
              >> <JMSServer Name="DomainJMSServer1b" Store="DomainJMSFileStore1b"
              >Targets="DomainAppServer1b"/>
              >> <DomainLogFilter Name="DomainLogFilter" SeverityLevel="1"/>
              >> <Security Name="Domain" PasswordPolicy="wl_default_password_policy"
              >> Realm="wl_default_realm" RealmSetup="true"/>
              >> <EmbeddedLDAP
              >> Credential="..." Name="Domain"/>
              >> <SecurityConfiguration
              >> Credential="..."
              >> Name="Domain" RealmBootStrapVersion="1"/>
              >> <Realm FileRealm="wl_default_file_realm" Name="wl_default_realm"/>
              >> <FileRealm Name="wl_default_file_realm"/>
              >> <PasswordPolicy Name="wl_default_password_policy"/>
              >> <JDBCConnectionPool ConnectionCreationRetryFrequencySeconds="60"
              >> DriverName="oracle.jdbc.driver.OracleDriver" MaxCapacity="5"
              >> Name="domainPOOL" Password="..."
              >> Properties="..." ShrinkFrequencySeconds="18000"
              >> Targets="DomainCluster" TestConnectionsOnCreate="true"
              >> TestConnectionsOnRelease="true" TestConnectionsOnReserve="true"
              >> TestFrequencySeconds="300" TestTableName="DUAL" URL="..."/>
              >> <JDBCTxDataSource JNDIName="domainSource" Name="domainSource"
              >> PoolName="domainPOOL" Targets="DomainCluster"/>
              >> <Application Name="MyDomain" Path="domain.ear"
              >> StagingMode="nostage" TwoPhase="true">
              >> <EJBComponent Name="domainejb" Targets="DomainCluster" URI="domainEjb.jar"/>
              >> </Application>
              >> </Domain>
              >>
              >> As you can, I have two servers configured in my DomainCluster. My
              >EJB, domainejb,
              >> is tied to
              >> this cluster. I can't seem to do a JNDI lookup of this EJB, or the
              >JMS Topic
              >> that I've created.
              >> When I attempt to do the lookup (from a client on the local machine)
              >using the
              >> URL
              >> t3://localhost:8031, I get a NameNotFound Exception. This makes sense,
              >because
              >> the
              >> Admin server isn't a part of the cluster. However, when I do the lookup
              >using
              >>
              >> t3://localhost:8035, I get an exception that states that it could not
              >connect
              >> to a host. I have
              >> insured that the server at this port is running, and the EJB is located
              >in it's
              >> JNDI tree.
              >>
              >> I am stumped and could really use someone's help. Please advice.
              >>
              >> Thanks, Joel
              >
              >Trying setting a listen address to specific ip instead of localhost
              >address. Have you tried view the JNDI tree of Managed Servers from console.
              >
              >Cheers,
              >
              >-- Prasad
              >
              Though some problems still remained, having the client use the weblogic.jar rather
              than the thin
              client jars (wljmsclient.jar and wlclient.jar) seemed to cure many of the issues.
              

  • JNDI lookup issue in weblogic 10 server

    Hi all,
    I have a serious problem in getting the datasource lookup. My application uses EJB3 and JPA and it is deployed in weblogic10. I configured datasource in the domain (ex:mydomain) using weblogic 10 admin console. Now when i try to call from a client program, it is giving me javax.naming.NameNotFoundException. I use eclipse IDE to deploy the application. From the IDE, i can start the oracle 10.3 server and it automatically deploys the application into the server in mydomain. The admin console shows that the application deployed fine. And i can see the webcontent WAR file and EJB jar deployed. Coming back to the issue.... I verified user_projects\domains\mydomain\config\jdbc\datasource-jdbc.xml and user_projects\domains\mydomain\config\config.xml file enteries. My entries are present in those files.
    When i start the server i am getting below error...
    << Stacktrace >>
    javax.naming.NameNotFoundException: While trying to look up jdbc in /app.; remaining name 'jdbc'
         at weblogic.jndi.internal.BasicNamingNode.newNameNotFoundException(BasicNamingNode.java:1139)
         at weblogic.jndi.internal.ApplicationNamingNode.lookup(ApplicationNamingNode.java:144)
         at weblogic.jndi.internal.WLEventContextImpl.lookup(WLEventContextImpl.java:254)
         at weblogic.jndi.internal.WLContextImpl.lookup(WLContextImpl.java:380)
         at weblogic.deployment.PersistenceUnitInfoImpl.lookUpAppScopedDataSource(PersistenceUnitInfoImpl.java:529)
         at weblogic.deployment.PersistenceUnitInfoImpl.reconfig(PersistenceUnitInfoImpl.java:549)
         at weblogic.ejb.container.deployer.EJBModule.reconfigPersistenceUnits(EJBModule.java:529)
         at weblogic.ejb.container.deployer.EJBModule.activate(EJBModule.java:515)
         at weblogic.application.internal.flow.ModuleListenerInvoker.activate(ModuleListenerInvoker.java:107)
         at weblogic.application.internal.flow.DeploymentCallbackFlow$2.next(DeploymentCallbackFlow.java:411)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:74)
         at weblogic.application.internal.flow.DeploymentCallbackFlow.activate(DeploymentCallbackFlow.java:66)
         at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:635)
         at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:37)
         at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
         at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:16)
         at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:162)
         at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
         at weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:569)
         at weblogic.deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:140)
         at weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:106)
         at weblogic.deploy.internal.targetserver.operations.AbstractOperation.commit(AbstractOperation.java:323)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:820)
         at weblogic.deploy.internal.targetserver.DeploymentManager.activateDeploymentList(DeploymentManager.java:1227)
         at weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:436)
         at weblogic.deploy.internal.targetserver.DeploymentServiceDispatcher.commit(DeploymentServiceDispatcher.java:163)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:181)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:12)
         at weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer$2.run(DeploymentReceiverCallbackDeliverer.java:67)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:516)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)
    << Client program snippet >>
    Hashtable ht = new Hashtable();
                   ht.put(Context.INITIAL_CONTEXT_FACTORY,"weblogic.jndi.WLInitialContextFactory");
                   ht.put(Context.PROVIDER_URL, "t3://10.237.76.132:7001");
                   InitialContext ctx = null;
                   ctx = new InitialContext(ht);
                   Object obj = (Object)ctx.lookup(EmployeeBean.RemoteJNDIName);
                   EmployeeRemote empRemote = (EmployeeRemote)PortableRemoteObject.narrow(obj,com.acs.test.emp.EmployeeRemote.class);
                   List empList = empRemote.getEmployeeDetails(1);
                   System.out.println("SUCCESS"+empList.size());
    << Persistence.xml >>
    <?xml version="1.0" encoding="UTF-8"?>
    <!-- Persistence deployment descriptor for dev profile -->
    <persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"
    version="1.0">
    <persistence-unit name="cmsepool">
    <jta-data-source>java:/mydatasource</jta-data-source>
              <class>com.acs.test.emp.EmployeeVO</class>
              <properties>
    <property name="hibernate.dialect" value="org.hibernate.dialect.HSQLDialect"/>
              <property name="hibernate.transaction.manager_lookup_class" value="org.hibernate.transaction.WeblogicTransactionManagerLookup"/>
    </properties>
    </persistence-unit>
    </persistence>

    Make sure that this Datasource you created is Targetted to Admin Server and full Cluster (incase of cluster domain). From Admin Console, select your datasource and check for the Targets tab. Since its JNDI lookup error, most probably it may not be deployed properly.
    HTH
    Ravi Jegga

  • JNDI lookup fails in a thread created by J2EE application on WAS 8.0.0.4 running on Red Hat Enterprise Server 5.8(2.6.18-308.e15).

    I am using Jackrabbit Repository (jcr's implementation) as backend in my Web Appl.Whose data persists on Oracle Database. To make connection with Oracle database jackrabbit provide provision of JNDI Lookup to read the data source defined in WAS (using WAS 8.0.0.4 as App Server).
    I am able to perform JNDI Lookup everywhere in my application,But in a flow where i am creating a Thread using Java Concurrent Api and insidethread's call() method when I am trying for JNDI Look following exception occurs –
    [8/20/13 10:57:35:163 IST] 000000dd System Out     O ERROR 20-08 10:57:35,163 (DatabaseFileSystem.java:init:209)            failed to initialize file system
    javax.jcr.RepositoryException: JNDI name not found: java:comp/env/jdbc/ofsds
    at org.apache.jackrabbit.core.util.db.ConnectionFactory.getJndiDataSource(ConnectionFactory.java:295)
    at org.apache.jackrabbit.core.util.db.ConnectionFactory.createDataSource(ConnectionFactory.java:233)
    at org.apache.jackrabbit.core.util.db.ConnectionFactory.getDataSource(ConnectionFactory.java:166)
    at org.apache.jackrabbit.core.fs.db.DbFileSystem.getDataSource(DbFileSystem.java:226)
    at org.apache.jackrabbit.core.fs.db.DatabaseFileSystem.init(DatabaseFileSystem.java:190)
    at org.apache.jackrabbit.core.config.RepositoryConfigurationParser$6.getFileSystem(RepositoryConfigurationParser.java:1057)
    at org.apache.jackrabbit.core.config.RepositoryConfig.getFileSystem(RepositoryConfig.java:911)
    at org.apache.jackrabbit.core.RepositoryImpl.<init>(RepositoryImpl.java:285)
    at org.apache.jackrabbit.core.RepositoryImpl.create(RepositoryImpl.java:605)
    at org.apache.jackrabbit.core.TransientRepository$2.getRepository(TransientRepository.java:232)
    at org.apache.jackrabbit.core.TransientRepository.startRepository(TransientRepository.java:280)
    at org.apache.jackrabbit.core.TransientRepository.login(TransientRepository.java:376)
    at com.mmpnc.icm.server.repository.RepositoryStartupService.newSession(RepositoryStartupService.java:408)
    at com.mmpnc.icm.server.repository.RepositoryStartupService.newSession(RepositoryStartupService.java:355)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
    at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
    at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
    at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
    at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
    at com.mmpnc.icm.server.repository.RepositoryStartupService_$$_javassist_1.newSession(RepositoryStartupService_$$_javassist_1.java)
    at com.mmpnc.icm.server.repository.ICMHouseKeepingSessionManager.create(ICMHouseKeepingSessionManager.java:37)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
    at org.jboss.seam.intercept.RootInvocationContext.proceed(RootInvocationContext.java:31)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:56)
    at org.jboss.seam.transaction.RollbackInterceptor.aroundInvoke(RollbackInterceptor.java:28)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:77)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
    at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
    at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
    at com.mmpnc.icm.server.repository.ICMHouseKeepingSessionManager_$$_javassist_8.create(ICMHouseKeepingSessionManager_$$_javassist_8.java)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
    at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:138)
    at org.jboss.seam.Component.callComponentMethod(Component.java:2171)
    at org.jboss.seam.Component.callCreateMethod(Component.java:2094)
    at org.jboss.seam.Component.newInstance(Component.java:2054)
    at org.jboss.seam.Component.getInstance(Component.java:1948)
    at org.jboss.seam.Component.getInstance(Component.java:1910)
    at org.jboss.seam.Component.getInstance(Component.java:1904)
    at org.jboss.seam.Component.getInstanceInAllNamespaces(Component.java:2271)
    at org.jboss.seam.Component.getValueToInject(Component.java:2223)
    at org.jboss.seam.Component.injectAttributes(Component.java:1663)
    at org.jboss.seam.Component.inject(Component.java:1481)
    at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
    at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
    at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
    at com.mmpnc.icm.server.repository.ICMHouseKeepingRepository_$$_javassist_7.create(ICMHouseKeepingRepository_$$_javassist_7.java)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
    at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:138)
    at org.jboss.seam.Component.callComponentMethod(Component.java:2171)
    at org.jboss.seam.Component.callCreateMethod(Component.java:2094)
    at org.jboss.seam.Component.newInstance(Component.java:2054)
    at org.jboss.seam.Component.getInstance(Component.java:1948)
    at org.jboss.seam.Component.getInstance(Component.java:1910)
    at org.jboss.seam.Component.getInstance(Component.java:1904)
    at org.jboss.seam.Component.getInstanceInAllNamespaces(Component.java:2271)
    at org.jboss.seam.Component.getValueToInject(Component.java:2223)
    at org.jboss.seam.Component.injectAttributes(Component.java:1663)
    at org.jboss.seam.Component.inject(Component.java:1481)
    at org.jboss.seam.core.BijectionInterceptor.aroundInvoke(BijectionInterceptor.java:61)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.core.MethodContextInterceptor.aroundInvoke(MethodContextInterceptor.java:44)
    at org.jboss.seam.intercept.SeamInvocationContext.proceed(SeamInvocationContext.java:68)
    at org.jboss.seam.intercept.RootInterceptor.invoke(RootInterceptor.java:107)
    at org.jboss.seam.intercept.JavaBeanInterceptor.interceptInvocation(JavaBeanInterceptor.java:166)
    at org.jboss.seam.intercept.JavaBeanInterceptor.invoke(JavaBeanInterceptor.java:102)
    at com.mmpnc.icm.server.repository.ICMHouseKeepingManager_$$_javassist_6.create(ICMHouseKeepingManager_$$_javassist_6.java)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:60)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:37)
    at java.lang.reflect.Method.invoke(Method.java:611)
    at org.jboss.seam.util.Reflections.invoke(Reflections.java:22)
    at org.jboss.seam.util.Reflections.invokeAndWrap(Reflections.java:138)
    at org.jboss.seam.Component.callComponentMethod(Component.java:2171)
    at org.jboss.seam.Component.callCreateMethod(Component.java:2094)
    at org.jboss.seam.Component.newInstance(Component.java:2054)
    at org.jboss.seam.Component.getInstance(Component.java:1948)
    at org.jboss.seam.Component.getInstance(Component.java:1910)
    at org.jboss.seam.Component.getInstance(Component.java:1904)
    at org.jboss.seam.Component.getInstance(Component.java:1899)
    at com.mmpnc.icm.server.concurrent.PerformCloseTask.call(PerformCloseTask.java:136)
    at com.mmpnc.icm.server.concurrent.PerformCloseTask.call(PerformCloseTask.java:1)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:314)
    at java.util.concurrent.FutureTask.run(FutureTask.java:149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:897)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:919)
    at java.lang.Thread.run(Thread.java:770)
    Caused by:
    javax.naming.ConfigurationException: A JNDI operation on a "java:" name cannot be completed because the server runtime is not able to associate the operation's thread with any J2EE application component.  This condition can occur when the JNDI client using the "java:" name is not executed on the thread of a server application request.  Make sure that a J2EE application does not execute JNDI operations on "java:" names within static code blocks or in threads created by that J2EE application.  Such code does not necessarily run on the thread of a server application request and therefore is not supported by JNDI operations on "java:" names. [Root exception is javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".]
    at com.ibm.ws.naming.java.javaURLContextImpl.throwExceptionIfDefaultJavaNS(javaURLContextImpl.java:522)
    at com.ibm.ws.naming.java.javaURLContextImpl.throwConfigurationExceptionWithDefaultJavaNS(javaURLContextImpl.java:552)
    at com.ibm.ws.naming.java.javaURLContextImpl.lookupExt(javaURLContextImpl.java:481)
    at com.ibm.ws.naming.java.javaURLContextRoot.lookupExt(javaURLContextRoot.java:485)
    at com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:370)
    at org.apache.aries.jndi.DelegateContext.lookup(DelegateContext.java:161)
    at javax.naming.InitialContext.lookup(InitialContext.java:436)
    at org.apache.jackrabbit.core.util.db.ConnectionFactory.getJndiDataSource(ConnectionFactory.java:280)
    ... 114 more
    Caused by:
    javax.naming.NameNotFoundException: Name comp/env/jdbc not found in context "java:".
    at com.ibm.ws.naming.ipbase.NameSpace.getParentCtxInternal(NameSpace.java:1969)
    at com.ibm.ws.naming.ipbase.NameSpace.retrieveBinding(NameSpace.java:1376)
    at com.ibm.ws.naming.ipbase.NameSpace.lookupInternal(NameSpace.java:1219)
    at com.ibm.ws.naming.ipbase.NameSpace.lookup(NameSpace.java:1141)
    at com.ibm.ws.naming.urlbase.UrlContextImpl.lookupExt(UrlContextImpl.java:1436)
    at com.ibm.ws.naming.java.javaURLContextImpl.lookupExt(javaURLContextImpl.java:477)
    ... 119 more

    Okay "damorgan", you seem to have me confused with a newbie. All I'm posting is the info that I got from my Sys Admin on the fix to my problem I encountered when trying to install Oracle 11g (11.2.0.0) on Red Hat Linux Enterprise 5. Since we're mouting onto an NFS, these are the steps he took. I'm not trying to "hide" information or post as little as possible. What other info do you want? I don't know what you are referring to when you mention "Filer, make, model, software version"? Please elaborate. I was just trying to post to others that may have encountered this problem, and I get somewhat attacked by you. I don't assume anyone can read my mind (especially you).

  • Using external LDAP server for  WL JNDI lookups

    I'm trying to find out if it is possible to re-direct JNDI calls to the WL
    server to an external LDAP server. I know you can install an external LDAP
    server for security purposes, but I would like to use an external LDAP
    server to handle all JNDI lookups (like for JNDI EJB name location, etc.).
    Is this possible?

    You typically need to use our JNDI store. We strongly recommend this for
    performance reasons..
    You can use the JNDI To LDAP bridge which is available from the sun web
    site.
    Michael Girdley
    BEA Systems Inc
    "Jack Archer" <[email protected]> wrote in message
    news:[email protected]..
    I'm trying to find out if it is possible to re-direct JNDI calls to the WL
    server to an external LDAP server. I know you can install an external LDAP
    server for security purposes, but I would like to use an external LDAP
    server to handle all JNDI lookups (like for JNDI EJB name location, etc.).
    Is this possible?

  • How to write the jndi lookup for ejb using oc4j server in jdeveloper

    Hi All,
    i am new to the JDeveloper. i want to develop the session bean in JDeveloper using the OC4J server. how to write the jndi lookup in cllient. what are the xml files need to deploy the application. where can i mention the JNDI name in xml file. so please provide the information as soon as possible.
    regards
    ram

    There is quite in-depth information in the Enterprise JavaBeans Developer's Guide.
    Section 2 (Understanding EJB Application Development) explains the xml files needed and Section 29 (Accessing an EJB from a Client) explains how to do a JNDI lookup.
    Hope this helps.

  • Manual JNDI lookup for EJB3 between different Application Server Instances

    Hi all,
    i have spent quite some time looking into this problem and searching the net but i just can't figure out for the life of me what i am doing wrong so i hope someone here can give me a clue or a good resource where i can look it up myself.
    I am currently doing some interoperability tests concerning EJB calls between Glassfish and Weblogic 10. In my test setup i have an EJB deployed in a jar file on one server and a servlet in a war file deployed on the other. The objective is to try to look up and call the EJB from the servlet. As there seem to be some issues with injection in Weblogic 10 i set that one aside for now (i have opened a case at BEA support for this) but i would like to do a plain old JNDI lookup to obtain the EJB.
    The online tutorials and FAQs i have read so far all state that this can be done the same way as it works for EJB2.x, at least if i understood them correctly. The interessting thing is, when i deploy an EJB2.x bean i can look it up without problems, but when i try to do the same with the EJB3 bean the name cannot be found. On the other hand when listing all contents of the JNDI tree in Glassfish from a stand alone application i can see entries for both EJBs of the type java.naming.Reference (in Weblogic i can also see entries for both, but the ones for EJB3 are of some weird internal weblogic types, which i put down as a weblogic problem for now).
    The lookup code for the servlet running in weblogic looks like this:
    Properties env = new Properties();
    env.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory");
    env.put(Context.PROVIDER_URL, "corbaname:iiop:1.2@localhost:3700");
    Object myEjb = new InitialContext(env).lookup("JNDINameDisplayedByContextListing");
    I know that the preferred way would be to have the corbaname put into weblogic.xml/sun-web.xml and just use an InitialContext without an environment to perform the lookup but i wanted to get rid of any additional indirections to pinpoint the source my problem and it should work this way, too. As i said, it works when i target an EJB2.x bean but not with the EJB3 one, so i guess i am doing something wrong there. The jar file contains the interface of the bean annotated with @Remote and the implementation of the interface annotated with @Stateless, i also tried setting the mappedName attribute for the bean and use that name as JNDI name, but that also fails. In addition i added an ejb-jar.xml to the jars META-INF containing the following:
    <?xml version="1.0" encoding="UTF-8"?>
    <ejb-jar xmlns="http://java.sun.com/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
    http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd"
         version="3.0">
         <enterprise-beans>
              <session>
                   <ejb-name>SecurityTest3EJB</ejb-name>
                   <ejb-class>
                        testcase.ejb.SecurityTestBean
                   </ejb-class>
                   <session-type>Stateless</session-type>
                   <transaction-type>Container</transaction-type>
    </session>
    </enterprise-beans>
    But the ejb-name specified there does not show up in a context listing, so i would guess that means the file is ignored or only accessible from within the same application server (note, there is no indication of any problems in the Glassfish log when deploying the jar file).
    This might be just a stupid mistake by me, but i just can't figure it out at the moment, so any advice will be greatly appriciated.
    Thanks, Chris

    I think i stumbled across something now. From some posts it seems to me that the EJB3 spec does not require EJBs to be accessible from a remote location, since this can be achieved by using the @RemoteHome annotation and performing a EJB2.x compliant look up. Is that correct?

Maybe you are looking for

  • Creating PL/SQL web services from object types

    Hello Jdeveloper, pl/sql web-services working successfully with object types.If we want to send the web-services to the client, do we need to send the entire folder that is created in the web-services folder of the external oc4j..? Creating the clien

  • How to send mail with attachment through SCSM 2012

    Dear All, I need to send mail to the end user with file attachment, as the user cannot download any attachments from the portal, Please support.... Thanks, Kalpankur Pandey

  • Oracle Objects in AQ

    Could any one clarify whether an Oracle Object be used in AQ? i.e can an object be enqueued or dequeued

  • Whether Oracle BI Apps does support mySAP(ERP2005)?

    HI, all Whether Oracle BI Apps does support mySAP(ERP2005)? Has it pre-build data model for mySAP? thanks a lot~~!

  • Web.xml parse error

    Hi all, I'm new to Tomcat and Servlets and have just tried to write my first web app. After carefully placing everything in the correct directories and spending hours trying to figure out how to write my web.xml, I continue getting 404 errors when I