JNDI, LDAP, and Weblogic 6.0

Hi-
We are encountering an issue with JNDI and spurious "socket closed"
exceptions. The players in our environment are Weblogic 6.0, Netscape
Directory Server 4.1, (both running on Solaris 2.8) and JNDI as of JDK 1.3.
We do JNDI lookups to connect to LDAP and most of the time everything works
fine. Occasionally we get the following exception.
java.lang.NullPointerException
at com.sun.jndi.ldap.Connection.run(Connection.java:568)
at java.lang.Thread.run(Thread.java:484)
Exception encountered: Socket closed
javax.naming.CommunicationException: Socket closed. Root exception is
java.net.SocketException: Socket closed
at java.net.SocketOutputStream.socketWrite(Native Method)
at java.net.SocketOutputStream.write(SocketOutputStream.java:83)
at java.io.BufferedOutputStream.flushBuffer(BufferedOutputStream.java:72)
at java.io.BufferedOutputStream.flush(BufferedOutputStream.java:130)
at com.sun.jndi.ldap.Connection.writeRequest(Connection.java:210)
at com.sun.jndi.ldap.LdapClient.search(LdapClient.java:497)
at com.sun.jndi.ldap.LdapCtx.doSearch(LdapCtx.java:1720)
at com.sun.jndi.ldap.LdapCtx.searchAux(LdapCtx.java:1584)
at com.sun.jndi.ldap.LdapCtx.c_search(LdapCtx.java:1509)
at
com.sun.jndi.toolkit.ctx.ComponentDirContext.p_search(ComponentDirContext.ja
va:371)
at
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeD
irContext.java:331)
at
com.sun.jndi.toolkit.ctx.PartialCompositeDirContext.search(PartialCompositeD
irContext.java:316)
at
javax.naming.directory.InitialDirContext.search(InitialDirContext.java:241)
at adpsis.posse.ldap.LDAPReader.find(LDAPReader.java:37)
at adpsis.posse.prfpos.PreferencesEJB.getUserName(PreferencesEJB.java:589)
at
adpsis.posse.prfpos.PreferencesEJB.getColorAttributes(PreferencesEJB.java:39
1)
at
adpsis.posse.prfpos.PreferencesEJB.getColorPreferences(PreferencesEJB.java:3
02)
at
adpsis.posse.prfpos.PreferencesEJBImpl.getColorPreferences(PreferencesEJBImp
l.java:250)
at
adpsis.posse.prfpos.PreferencesEJBEOImpl.getColorPreferences(PreferencesEJBE
OImpl.java:287)
at
adpsis.posse.prfpos.PreferencesEJBEOImpl_WLSkel.invoke(PreferencesEJBEOImpl_
WLSkel.java:116)
at
weblogic.rmi.internal.BasicServerAdapter.invoke(BasicServerAdapter.java:373)
at
weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java
:128)
at
weblogic.rmi.internal.BasicServerAdapter.invoke(BasicServerAdapter.java:237)
at
weblogic.rmi.internal.BasicRequestHandler.handleRequest(BasicRequestHandler.
java:118)
at
weblogic.rmi.internal.BasicRequestDispatcher.dispatch(BasicRequestDispatcher
.java:115)
at weblogic.rmi.internal.ServerRequest.sendOneWayRaw(ServerRequest.java:88)
at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:108)
at
weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java
:247)
at
weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(ReplicaAwareRemoteRef.java
:225)
at
adpsis.posse.prfpos.PreferencesEJBEOImpl_WLStub.getColorPreferences(Preferen
cesEJBEOImpl_WLStub.java:221)
at adpsis.posse.transformer.CSSServlet.doPost(CSSServlet.java:86)
at adpsis.posse.transformer.CSSServlet.doGet(CSSServlet.java:214)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:748)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:213)
at
weblogic.servlet.internal.WebAppServletContext.invokeServlet(WebAppServletCo
ntext.java:1265)
at
weblogic.servlet.internal.ServletRequestImpl.execute(ServletRequestImpl.java
:1631)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:137)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:120)
The only way to recover is to restart the Weblogic server. The LDAP server
appears to be running normally and continues to service other instances of
Weblogic. No errors are logged in the LDAP server, the JNDI lookup that
establishes the DirContext works fine on restart and is used multiple times
with no issues until..poof..socket closed. I'm not certain which part is at
issue, Weblogic, LDAP, or JNDI.
Any ideas?
Regards,
Brett Schmoll
ADP/SIS

WLS 6.0 will be supported in the next release of WLCS, which is due in the
spring.
- Ginny
"aamerG" <[email protected]> wrote in message
news:3a5cb774$[email protected]..
Hi everyone,
we are starting a new development project and would like to use Weblogic
6.0. How soon do you think there we be a version of WLCS which works with
6.0.
TIA

Similar Messages

  • Problem with JNDI/LDAP AND connection pool

    I'm a newbie to Java but am attempting to write a servlet that retrieves info use to populate the contents of drop down menus. I'd like to only have to do this once. The servlet also retrieves other data (e.g. user profile info, etc ...). I'd like to be able to use the connection pool for all of these operations but I'm getting a compile error:
    public class WhitePages extends HttpServlet {
    ResourceBundle rb = ResourceBundle.getBundle("LocalStrings");
    public static String m_servletPath = null;
    public static String cattrs = null;
    public static String guidesearchlist[] = {};
    public static int isLocalAddr = 0;
    private int aeCtr;
    private String[] sgDNArray;
    private HashMap sgDN2DNLabel = new HashMap();
    private HashMap sgDN2SearchGuide = new HashMap();
    private String strport;
    private int ldapport;
    private String ldaphost;
    private String ldapbinddn;
    private String ldapbindpw;
    private String ldapbasedn;
    private int maxsearchcontainers;
    private int maxsearchkeys;
    private String guidesearchbases;
    private String guidecontainerclass;
    private String strlocaladdr;
    private String providerurl;
    // my init method establishes the connection
    // pool and then retrieve menu data
    public void init(ServletConfig config) throws ServletException {
    super.init(config);
    String strport = config.getInitParameter("ldapport");
    ldapport = Integer.parseInt(strport);
    String strconts = config.getInitParameter("maxsearchcontainers");
    maxsearchcontainers = Integer.parseInt(strconts);
    String strkeys = config.getInitParameter("maxsearchkeys");
    maxsearchkeys = Integer.parseInt(strkeys);
    ldaphost = config.getInitParameter("ldaphost");
    ldapbinddn = config.getInitParameter("ldapbinddn");
    ldapbindpw = config.getInitParameter("ldapbindpw");
    ldapbasedn = config.getInitParameter("ldapbasedn");
    guidesearchbases = config.getInitParameter("guidesearchbases");
    guidecontainerclass = config.getInitParameter("guidecontainerclass");
    strlocaladdr = config.getInitParameter("localaddrs");
    providerurl = "ldap://" + ldaphost + ":" + ldapport;
    /* Set up environment for creating initial context */
    Hashtable env = new Hashtable(11);
    env.put(Context.INITIAL_CONTEXT_FACTORY, "com.sun.jndi.ldap.LdapCtxFactory");
    env.put(Context.PROVIDER_URL, providerurl.toString());
    /* Enable connection pooling */
    env.put("com.sun.jndi.ldap.connect.pool", "true");
    StringTokenizer st = new StringTokenizer(guidesearchbases, ":" );
    String guidesearchlist[] = new String[st.countTokens()];
    for ( int i = 0; i < guidesearchlist.length; i++ ) {
    guidesearchlist[i] = st.nextToken();
    // Get a connection from the connection pool
    // and retrieve the searchguides
    StringBuffer asm = new StringBuffer(""); // This is the advanced search menu htmlobject buffer
    StringBuffer strtmpbuf = new StringBuffer(""); // This is the simple search menu htmlobject buffer
    try {
    StringBuffer filter = new StringBuffer("");
    filter.append("(objectclass=" + guidecontainerclass + ")");
    String[] attrList = {"dn","cn","searchguide"};
    SearchControls ctls = new SearchControls();
    ctls.setReturningAttributes(attrList);
    ctls.setSearchScope(SearchControls.SUBTREE_SCOPE);
    String attrlabelkey;
    sgDNArray = new String[guidesearchlist.length];
    for( int i = 0; i < guidesearchlist.length; i++ ) {
    // Search each of the namingspaces where
    // searchguides exist then build
    // the dynamic menus from the result
    DirContext ctx = new InitialDirContext(env);
    NamingEnumeration results = ctx.search(guidesearchlist, filter, ctls);
    I get a compile error:
    WhitePages.java:164: cannot resolve symbol
    symbol : method search (java.lang.String,java.lang.StringBuffer,javax.naming.directory.SearchControls)
    location: interface javax.naming.directory.DirContext
    NamingEnumeration results = ctx.search(guidesearchlist[i], filter, ctls);
    ^
    WhitePages.java:225: cannot resolve symbol
    symbol : variable ctx
    location: class OpenDirectory
    ctx.close();
    ^
    Can anyone help? If there is someone out there with JNDI connection pool experience I would appreciate your assistance!

    Manish
    The issue may not be related to the number of connections or the initial
    connections. Check your heap size (ms, mx). Turn on verbosegc. Your heap may
    not be big enough to accept the 25,000 rows.
    Bernie
    "Manish Kumar Singh" <[email protected]> wrote in message
    news:3e6c34ca$[email protected]..
    We are creating the result set with 25000 rows(each row has 56 columns) bygetting the connection using data source. With the initial capacity of the
    connection pool is 5 and the max capacity as 30 and grow connection as 1,
    the server gets out of memory exception, when we issue a new request, even
    after closing the previous connections.
    Now, if we change the initial capacity to 1 and rest all the things assame, the issue gets resolved and the server works fine.
    Could you please help me out in this regard????
    thanks in advance
    manish

  • Domino ldap and weblogic server 6.1

    Hi,
    I am trying to use domino ldap for authentication in weblogic server 6.1
    I configured a custom ldap realm.
    But the users were not listed from domino ldap and authentication also failed.
    Can anybody help me?
    Thanx in advance.
    - prabha.

    at the moment it is possible for me to work, though. i worked around the
    problem and i set web.xml as a read only file. i still can't use wizards to
    create servlets and i can't edit web.xml with jbuilder.

  • LDAP groups and WebLogic Roles - Urgent ( weblogic 6.1 sp1, iPLanet 5.1)

    I have 2 questions and these are very urgent :-
    1. Where the mapping can be defined between LDAP groups and WebLogic Roles. I have
    2 groups in iPLanet :- Contarctors and employees and I have 2 security roles in weblogic:-
    contractactors and employess. How do I map LDAP group contractors to weblogic security
    Role contractors? Similarly for employees ?
    2. I have not defined contarctors and employeees under People container in IPlanet.
    e.g. The RDN for contractor is
    uid=1234,ou=dir,dc=orams,dc=com
    Can I still use the defualt security realm of weblogic (the WebLogic Security Realm
    under People ) OR I have to write my own custom code ?
    3. I am planning to use Roles insetad of groups to manage the logical grouping in
    iPLant. Can I still use the groups in WebLogic security realm ( in the configuratin
    parameters ?)
    This is very urgent ....so if any of you can throw any hints that will be greatly
    appreciated.
    --Sunita

    Hi Ariel,
    The driver is bundled with the product in WLS 6.1sp1. you don't have to
    download any additional driver. Use it as you normally would only thing to
    remember is if you are trying to write standalone java code then you have to
    have weblogic.jar in your classpath. For the rest of the info follow the wls
    docs for 6.1
    HTH
    sree
    "Ariel" <[email protected]> wrote in message
    news:3bb4a643$[email protected]..
    We want to connect our Weblogic 6.1 sp1 server to a SQLServer 2000 db. We
    downloaded the JDriver from bea.com, but all the istructions that camewith
    it are for WLserver 5.1.
    What has to be done to do this with 6.1 sp1?
    Thanks,
    Ariel

  • Load balancing and failover in Embedded LDAP in weblogic

    How to handle load balancing and failover in Embedded LDAP in weblogic server?

    You should consider posting this to the Weblogic and/or LDAP support forums. This forum is meant for Sun Web Server questions.
    Thanks
    Manish

  • How to get datasources to work on both JBoss and Weblogic?

    We have an EJB3 application that needs to be deployed both on JBoss 4 and WebLogic 10.
    JBoss creates datasources with JNDI names "java:dsName" , WebLogic uses a pattern "dsName" (and trying to add "java:" to that leads to nasty errors). Despite what the EJB3 books say, looking up that DS using "java:comp/env/dsName" does not work from WebLogic, it simply doesn't register the datasource in that namespace.
    The @Resource annotation takes a mappedName argument as the JNDI name for the datasource, but this is required to be a fixed String (so we can't inject the actual name at runtime depending on the deployment environment).
    All data access is through session beans, so using an @PersistenceContext is no option.
    At the moment we're trying to get around this by creating a special EJB whose only job it is to figure out what server it's running on and find a datasource the hard way (using JNDI lookups), returning that to the EJBs that need it, but that's not supposed to be the way the EJB3 model is supposed to work.

    All Java EE implementations are required to support the private component namespace -- java:comp/env/. It's there for the express purpose of providing portable access to resources needed by the code. What is not specified is the way in which a particular Java EE implementation allows the mapping between a component namespace entry, e.g. java:comp/env/dsName, and the corresponding physical datasource to be expressed.
    Unfortunately, mappedName is not required to be supported. However, even if you don't use mappedName each vendor must have a way to resolve a component environment dependency to the corresponding datasource. In SUN's implementation, this is done via sun-{ejb | web | application-client}.xml. The key is that the source depends on the java:comp/env/... name and the mapping to a physical resource can be changed as part of the application assembly or deployment process without touching the code.
    Here's a presentation describing some of these issues in more detail : https://glassfish.dev.java.net/javaee5/ejb/compdependencies_xmlforum_nov15.pdf
    --ken                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Dynamic jndi-name in weblogic-ejb-jar.xml

    Is there a way to create dynamic (i.e. runtime) jndi-names for EJBs instead of
    (or in addition to) "hard coding" them in the weblogic-ejb-jar.xml file? What
    I'm trying to do is have one WebLogic instance (JVM) host multiple environments
    (our Beta and Training environments) and I simply want to deploy the same .ear
    file twice but have each environment (application - .ear) reference a different
    database schema (jdbc connection pool). I have everything working just fine for
    this scenario except when I define jndi-names for our ejbs. The problem is that
    I am really deploying the same ejbs (jndi-names and actually code base) in each
    applicatoin instance and I get an exception when the WebLogic is trying to deploy
    the second application (.ear) because the jndi-names in it have already been deployed
    by the first application instance. I recieve a jndi error stating that the name
    is already deployed.
    Or is there a better path to go down for what I am trying to do to have one WebLogic
    instance support our beta and training environments? Usually (but not always)
    our code base is the for same for both of these environments, I simply need to
    have each environment use a different database schema.
    Thanks

    A little birdie tells me that BEA does this very thing. Looking at the
    descriptors for WebLogic Portal I see:
    <weblogic-enterprise-bean>
    <ejb-name>LoaderEJB</ejb-name>
    <enable-call-by-reference>True</enable-call-by-reference>
    <jndi-name>${APPNAME}.BEA_content.LoaderHome</jndi-name>
    </weblogic-enterprise-bean>
    Yes, the ${APPNAME} token really is expanded into the J2EE application
    name at deployment time!
    Sincerely,
    Daniel Selman
    Bryan Dixon wrote:
    Rewriting our build process isn't really much of an option for me. Our current
    build process is too complex and time consuming right now to convert to Ant (we
    eventually will do this but not for a while). So are there any other ideas that
    aren't build related?
    Thanks
    "Eric Ma" <[email protected]> wrote:
    You don't need run-time dynamism in JDNI names and it can't be done anyways.
    You
    need token substitution in XML configuration files when building the
    app. If
    you are using Ant for building, then it is a breeze. If not, first convert
    your
    build process to use Ant.
    Also, a single WLS instance hosting multiple environments sounds really
    INTRIGUING
    to me.
    Eric Ma
    "Bryan Dixon" <[email protected]> wrote:
    Is there a way to create dynamic (i.e. runtime) jndi-names for EJBsinstead
    of
    (or in addition to) "hard coding" them in the weblogic-ejb-jar.xml file?
    What
    I'm trying to do is have one WebLogic instance (JVM) host multiple environments
    (our Beta and Training environments) and I simply want to deploy the
    same .ear
    file twice but have each environment (application - .ear) referencea
    different
    database schema (jdbc connection pool). I have everything working just
    fine for
    this scenario except when I define jndi-names for our ejbs. The problem
    is that
    I am really deploying the same ejbs (jndi-names and actually code base)
    in each
    applicatoin instance and I get an exception when the WebLogic is trying
    to deploy
    the second application (.ear) because the jndi-names in it have already
    been deployed
    by the first application instance. I recieve a jndi error stating that
    the name
    is already deployed.
    Or is there a better path to go down for what I am trying to do to have
    one WebLogic
    instance support our beta and training environments? Usually (but not
    always)
    our code base is the for same for both of these environments, I simply
    need to
    have each environment use a different database schema.
    Thanks

  • NullPointerException at com.sun.jndi.ldap.Connection.run(Connection.java:52

    We are using the Sun jndi 1.2.1 files from a Java client to
    access the IBM SecureWay Directory 3.2 server. Our test case is
    retrieving entries using the ctx.getAttributes (String, String[])
    method. Occasionally we are receiving the following error.
    java.lang.NullPointerException
    at com.sun.jndi.ldap.Connection.run(Connection.java:525)
    at java.lang.Thread.run(Thread.java:481)
    The java.lang.NullPointerException is coming from the Sun JNDI file.
    Our program is not catching this exception.
    Has anyone seen this problem before and have any ideas on how this can be resolved?

    Download and use LDAP 1.2.3 or JDK 1.3.1.
    The problem should go away.

  • How to authenticate CXF-Webservice against external LDAP in WebLogic?

    Hi there,
    I'm trying to integrate our Camel-application into WebLogic 12c. All the incoming endpoints are CXF-based webservices. These are secured by "UsernameToken Timestamp" with the WSS4JInInterceptor configured like this:
    <bean id="wss4jInInterceptor" class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
              <constructor-arg>
                   <map>
                        <entry key="action" value="UsernameToken Timestamp" />
                        <entry key="passwordType" value="PasswordDigest" />
                        <entry key="passwordCallbackClass"
                             value="de.mycompany.camel.cxf.UserTokenCallbackHandler" />
                   </map>
              </constructor-arg>     
    </bean>
    My problem is: WSS4JInInterceptor expects the UserTokenCallbackHandler to return the password of the user delivered in the header <wsse:Username>. Is there any way to retrieve this from an external LDAP configured in WebLogic? I've already managed to retrieve the users, groups etc with JMX (javax.management.MBeanServerConnection and weblogic.security.providers.authentication.LDAPAuthenticatorMBean), but I can't figure out how to authenticate the user against the LDAP, i. e. retrieve the password.
    Or am I heading in a completely wrong direction and this is not the way to achieve authentication for CXF-Webservices in WebLogic?
    Please give me a hint (code-snippets preferred ;-) ) how to solve this.
    Regards,
    Frank

    I have run into the exact same situation ? Did you ever get around this ? If so, how ? Please let me know.

  • URGENT : Add & Retrieve properties from Embedded LDAP in Weblogic 9.2

    I am using Embedded LDAP WebLogic 9.2 and i followed the steps mentioned in the URL below.I have nt changed anything except Server URL which points to localhost:7001.
    http://e-docs.bea.com/wlp/docs92/users/appendixa.html#wp1055363
    Questions:
    1)How to add additional attributes to embedded LDAP? (eg email, phone etc).
    2)How to read those properties from embedded LDAP using WebLogic Portal API? Any code samples?
    Any help is appreaciated.

    this problem is due to hard-coded user/pwd in installation scripts. Here are steps
    1) open file AIA_HOME/Infrastructure/install/wlscripts/FPWLCommonConfig.xml
    2) reach to target CreateStartupClasses
    3) there are three java tasks for com.oracle.oems.weblogic.AQJMSPasswordUtility
    4) in the task for oraesb, password is hardcoded as 'oraesb' in clear text.
    5) this should be password of 'ORAESB' database user.
    6) change this password value; and restart the installation.
    Regards,
    Vaibhav

  • JNDI Administration in Weblogic 10.3

    This is my code:
    InitialContext initialContext = new InitialContext();
    Context context = (Context) initialContext.lookup("java:comp/env");
    bootstrapFlag = (Boolean) context.lookup("bootStrapFlag");
    Could anyone guide me how to configure the "bootStrapFlag" as a JNDI entry in Weblogic 10.3
    Also please let me know if java.net.URL entry can be created in the Weblogic JNDI.
    Thanks
    Jayakumar

    Hi,
    If you are using Framework like Spring ...then you can use the following technique as well : http://jaysensharma.wordpress.com/2010/04/06/bindingaccessing-jndi-names-using-spring-framework/
    Plain Java Implementation
    If you want to Bind any object in the Server JNDI Tree (Emp, java.net.URL) ...then you can also use InitialContext.bind(String) method.
    Example:
    Step1). Create a Class "Employee.java" suppose you want to bind the Employee Object in the Server JNDI Tree... Make Sure that the Object is declared as java.io.Serializable
    package pack;
    public class Employee implements java.io.Serializable
    private int empNo;
    public Employee()
    System.out.println("\n\n\t Employee Object Instentiated...With EmpId:0");
    public Employee(int empNo)
    System.out.println("\n\n\t Employee Object Instentiated...With EmpId:"+empNo);
    Step2). Compile it and make a Jar of it...like "Employee.jar".
    Step3). Make this JAR available in the Server Classpath...or you can paste this Jar in the Domain/Lib directory:
    Example: C:\bea103\user_projects\domains\7001_Domain_Name\lib
    Step4). Restart the Server sothat it can pick up the Employee.jar from the Classpath.
    Step5). Write another Program as a Client "BindingStartUp.java" to Bind this Object in the Server JNDI tree...
    import java.rmi.*;
    import javax.naming.*;
    import java.util.*;
    public class BindingStartUp
    public final static String JNDI_FACTORY = "weblogic.jndi.WLInitialContextFactory";
    private static String serverUrl ="t3://localhost:7001";
    public static void main(String ar[])throws Exception
    InitialContext ic=null;
    try{
    Hashtable env = new Hashtable();
    env.put(Context.INITIAL_CONTEXT_FACTORY, JNDI_FACTORY);
    env.put(Context.PROVIDER_URL, serverUrl);
    ic = new InitialContext(env);
    catch(Exception e){
    System.out.println("\n\n\t Unable To Get The InitialContext => "+e);
    try{
    pack.Employee emp=new pack.Employee(1000);
    ic.rebind("EmpJndiName",emp);
    System.out.println("\n\n\t Employee Object Binded in the JNDI Tree Of Server Suuccessfully");
    System.out.println("\n\n\t You can use (pack.Emp)ic.lookup(\"EmpJndiName\");");
    System.out.println("\t To Lookup the Employee Object from the JNDI Tree");
    catch(Exception e)
    System.out.println("\n\n\t Unable To Bind => "+e);
    e.printStackTrace();
    Step6). Now as soon as you run this Client Program it will,Bind this Object in the Server JNDI tree...You can verify it from the AdminConsole---JNDITree section
    Step7). Now u can write the Smilar code ...to Lookup the Object from JNDI tree....
    You can use (pack.Emp)ic.lookup(\"EmpJndiName\");
    Thanks
    Jay SenSharma
    http://jaysensharma.wordpress.com (WebLogic Wonders Are Here)
    Edited by: Jay SenSharma on Feb 24, 2010 8:06 PM

  • Session Beans  and TIBCO E4JMS and Weblogic JMS 8.1

              Setup:-
              Weblogic Server 8.1 SP2 on Linux
              TIBCO E4JMS 3.1.2
              I have a two Staeless Session Beans which are deployed in both sides of the cluster
              - Cluster is made up of two servers(ManagedServer1 and ManagedServer2) on the
              same machine. The beans have container managed transaction and trans-type set
              to required. The JMS Server is on ManagedServer1. The session bean publishes 100
              messages to TIBCO JMS and Weblogic JMS and calls the second bean which again publishes
              100 messages to TIBCO JMS and Weblogic JMS .
              The connection factories used are XAQueueConnectionFactories.
              This seems to work under the following conditions:-
              a) The session beans are deployed just in ManagedServer1
              b) The WL load balancing scheme manages to run both the beans on ManagedServer1
              c) If I don't publish onto Weblogic JMS( It runs successfully on ManagedServer1
              and ManagedServer2)
              It does not seems to work :-
              When the The WL load balancing scheme manages to run both the beans on ManagedServer2.I
              put debug statements on the beans and it seems to publish everything but fails
              during the commit
              murali@dbuslinux1:~/SessionBeanExample> ant run
              Buildfile: build.xml
              run:
              [java] Run : 0
              [java] InitialContextFactory weblogic.jndi.WLInitialContextFactory
              [java] Provider Url t3://myhost.mycompany.com:18003,myhost.mycompany.com:18005
              [java] javax.transaction.TransactionRolledbackException: Exception while
              commiting Tx : Name=[EJB Case463495.StatelessBean.sendMessageWrap(java.lang.Integer,java.lang.Integer,java.lang.String,boolean,boolean)],Xid=BEA1-000649EC8876A0032A5E(160401684),Status=Rolled
              back. [Reason=javax.transaction.xa.XAException],numRepliesOwedMe=0,numRepliesOwedOthers=0,seconds
              since begin=3,seconds left=30,XAServerResourceInfo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN1TCF]=(ServerResourceInfo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN1TCF]=(state=rolledback,assigned=ManagedServer2),xar=weblogic.deployment.jms.WrappedXAResource_com_tibco_tibjms_TibjmsXAResource@a0181b0),XAServerResourceInfo[JMS_MyJMS
              File Store]=(ServerResourceInfo[JMS_MyJMS File Store]=(state=rolledback,assigned=ManagedServer1),xar=null),XAServerResourceInfo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN2TCF]=(ServerResourceInfo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN2TCF]=(state=rolledback,assigned=ManagedServer2),xar=weblogic.deployment.jms.WrappedXAResource_com_tibco_tibjms_TibjmsXAResource@98f6821),SCInfo[E4JMSDOMAIN+ManagedServer1]=(state=rolledback),SCInfo[E4JMSDOMAIN+ManagedServer2]=(state=rolledback),properties=({weblogic.transaction.name=[EJB
              Case463495.StatelessBean.sendMessageWrap(java.lang.Integer,java.lang.Integer,java.lang.String,boolean,boolean)]}),OwnerTransactionManager=ServerTM[ServerCoordinatorDescriptor=(CoordinatorURL=ManagedServer2+myhost.mycompany.com:18005+E4JMSDOMAIN+t3+,
              XAResources={},NonXAResources={})],CoordinatorURL=ManagedServer2+myhost.mycompany.com:18005+E4JMSDOMAIN+t3+):
              javax.transaction.xa.XAException
              [java] at com.tibco.tibjms.TibjmsXAResource.end(Ljavax.transaction.xa.Xid;I)V(TibjmsXAResource.java:157)
              [java] at weblogic.deployment.jms.WrappedXAResource_com_tibco_tibjms_TibjmsXAResource.end(Ljavax.transaction.xa.Xid;I)V(Unknown
              Source)
              [java] at weblogic.transaction.internal.XAServerResourceInfo.end(Lweblogic.transaction.internal.ServerTransactionImpl;Ljavax.transaction.xa.Xid;I)V(XAServerResourceInfo.java:1124)
              [java] at weblogic.transaction.internal.XAServerResourceInfo.internalDelist(Lweblogic.transaction.internal.ServerTransactionImpl;I)V(XAServerResourceInfo.java:325)
              [java] at weblogic.transaction.internal.XAServerResourceInfo.delist(Lweblogic.transaction.internal.ServerTransactionImpl;IZ)V(XAServerResourceInfo.java:255)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.delistAll(IZ)V(ServerTransactionImpl.java:1408)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.delistAll(I)V(ServerTransactionImpl.java:1396)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare()V(ServerTransactionImpl.java:1932)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.internalCommit()V(ServerTransactionImpl.java:252)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.commit()V(ServerTransactionImpl.java:221)
              [java] at weblogic.ejb20.internal.BaseEJBObject.postInvoke(Lweblogic.ejb20.interfaces.InvocationWrapper;Ljava.lang.Throwable;)V(BaseEJBObject.java:289)
              [java] at weblogic.ejb20.internal.StatelessEJBObject.postInvoke(Lweblogic.ejb20.interfaces.InvocationWrapper;Ljava.lang.Throwable;)V(StatelessEJBObject.java:141)
              [java] at Case463495.Stateless_soycq8_EOImpl.sendMessageWrap(Ljava.lang.Integer;Ljava.lang.Integer;Ljava.lang.String;ZZ)V(Stateless_soycq8_EOImpl.java:112)
              [java] at Case463495.Stateless_soycq8_EOImpl_WLSkel.invoke(ILweblogic.rmi.spi.InboundRequest;Lweblogic.rmi.spi.OutboundResponse;Ljava.lang.Object;)Lweblogic.rmi.spi.OutboundResponse;(Unknown
              Source)
              [java] at weblogic.rmi.internal.BasicServerRef.invoke(Lweblogic.rmi.extensions.server.RuntimeMethodDescriptor;Lweblogic.rmi.spi.InboundRequest;Lweblogic.rmi.spi.OutboundResponse;)V(BasicServerRef.java:477)
              [java] at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(Lweblogic.rmi.extensions.server.RuntimeMethodDescriptor;Lweblogic.rmi.spi.InboundRequest;Lweblogic.rmi.spi.OutboundResponse;)V(ReplicaAwareServerRef.java:108)
              [java] at weblogic.rmi.internal.BasicServerRef$1.run()Ljava.lang.Object;(BasicServerRef.java:420)
              [java] at weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic.security.subject.AbstractSubject;Ljava.security.PrivilegedExceptionAction;)Ljava.lang.Object;(AuthenticatedSubject.java:353)
              [java] at weblogic.security.service.SecurityManager.runAs(Lweblogic.security.acl.internal.AuthenticatedSubject;Lweblogic.security.acl.internal.AuthenticatedSubject;Ljava.security.PrivilegedExceptionAction;)Ljava.lang.Object;(SecurityManager.java:144)
              [java] at weblogic.rmi.internal.BasicServerRef.handleRequest(Lweblogic.rmi.spi.InboundRequest;)V(BasicServerRef.java:415)
              [java] at weblogic.rmi.internal.BasicExecuteRequest.execute(Lweblogic.kernel.ExecuteThread;)V(BasicExecuteRequest.java:30)
              [java] at weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequest;)V(ExecuteThread.java:197)
              [java] at weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:170)
              [java] at java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown
              Source)
              [java] ; nested exception is:
              [java] javax.transaction.xa.XAException
              [java] at weblogic.rjvm.BasicOutboundRequest.sendReceive()Lweblogic.rmi.spi.InboundResponse;(BasicOutboundRequest.java:108)
              [java] at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(Lweblogic.rmi.extensions.server.RemoteReference;Lweblogic.rmi.extensions.server.RuntimeMethodDescriptor;[Ljava.lang.Object;Ljava.lang.reflect.Method;)Ljava.lang.Object;(ReplicaAwareRemoteRef.java:284)
              [java] at weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(Ljava.rmi.Remote;Lweblogic.rmi.extensions.server.RuntimeMethodDescriptor;[Ljava.lang.Object;Ljava.lang.reflect.Method;)Ljava.lang.Object;(ReplicaAwareRemoteRef.java:244)
              [java] at Case463495.Stateless_soycq8_EOImpl_812_WLStub.sendMessageWrap(Ljava.lang.Integer;Ljava.lang.Integer;Ljava.lang.String;ZZ)V(Unknown
              Source)
              [java] at Case463495.Client.run()V(Client.java:103)
              [java] at Case463495.Client.sendMessage()V(Client.java:132)
              [java] at Case463495.Client.main([Ljava.lang.String;)V(Client.java:195)
              [java] Caused by: javax.transaction.xa.XAException
              [java] at com.tibco.tibjms.TibjmsXAResource.end(TibjmsXAResource.java:157)
              [java] at weblogic.deployment.jms.WrappedXAResource_com_tibco_tibjms_TibjmsXAResource.end(Unknown
              Source)
              [java] at weblogic.transaction.internal.XAServerResourceInfo.end(XAServerResourceInfo.java:1124)
              [java] at weblogic.transaction.internal.XAServerResourceInfo.internalDelist(XAServerResourceInfo.java:325)
              [java] at weblogic.transaction.internal.XAServerResourceInfo.delist(XAServerResourceInfo.java:255)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.delistAll(ServerTransactionImpl.java:1408)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.delistAll(ServerTransactionImpl.java:1396)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTransactionImpl.java:1932)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTransactionImpl.java:252)
              [java] at weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransactionImpl.java:221)
              [java] at weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:289)
              [java] at weblogic.ejb20.internal.StatelessEJBObject.postInvoke(StatelessEJBObject.java:141)
              [java] at Case463495.Stateless_soycq8_EOImpl.sendMessageWrap(Stateless_soycq8_EOImpl.java:112)
              [java] at Case463495.Stateless_soycq8_EOImpl_WLSkel.invoke(Unknown Source)
              [java] at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              [java] at weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java:108)
              [java] at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              [java] at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:353)
              [java] at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
              [java] at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
              [java] at weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:30)
              [java] at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              [java] at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              [java] at java.lang.Thread.startThreadFromVM(Unknown Source)
              Apologies in advance if this need to be posted in the JTA news group..
              Any ideas?
              Murali
              

    Posting to the transaction newsgroup would probably also be helpful.
              Can you post the code for the session bean so we can see how you're
              enlisting Tibco in the transaction? It looks like you're using the JMS
              provider wrappers from 8.1, which do the transaction enlistment for you, so
              you shouldn't need to mess with JTA at all in your code. Still, something
              weird is going on and it'd be nice to see exactly what your code looks like.
              greg
              "L Muralidharan" <[email protected]> wrote in message
              news:[email protected]...
              >
              > Setup:-
              >
              > Weblogic Server 8.1 SP2 on Linux
              >
              > TIBCO E4JMS 3.1.2
              >
              > I have a two Staeless Session Beans which are deployed in both sides of
              the cluster
              > - Cluster is made up of two servers(ManagedServer1 and ManagedServer2) on
              the
              > same machine. The beans have container managed transaction and trans-type
              set
              > to required. The JMS Server is on ManagedServer1. The session bean
              publishes 100
              > messages to TIBCO JMS and Weblogic JMS and calls the second bean which
              again publishes
              > 100 messages to TIBCO JMS and Weblogic JMS .
              >
              > The connection factories used are XAQueueConnectionFactories.
              >
              > This seems to work under the following conditions:-
              >
              > a) The session beans are deployed just in ManagedServer1
              > b) The WL load balancing scheme manages to run both the beans on
              ManagedServer1
              > c) If I don't publish onto Weblogic JMS( It runs successfully on
              ManagedServer1
              > and ManagedServer2)
              >
              > It does not seems to work :-
              >
              > When the The WL load balancing scheme manages to run both the beans on
              ManagedServer2.I
              > put debug statements on the beans and it seems to publish everything but
              fails
              > during the commit
              >
              > murali@dbuslinux1:~/SessionBeanExample> ant run
              > Buildfile: build.xml
              >
              > run:
              > [java] Run : 0
              > [java] InitialContextFactory weblogic.jndi.WLInitialContextFactory
              > [java] Provider Url
              t3://myhost.mycompany.com:18003,myhost.mycompany.com:18005
              > [java] javax.transaction.TransactionRolledbackException: Exception
              while
              > commiting Tx : Name=[EJB
              Case463495.StatelessBean.sendMessageWrap(java.lang.Integer,java.lang.Integer
              ,java.lang.String,boolean,boolean)],Xid=BEA1-000649EC8876A0032A5E(160401684)
              ,Status=Rolled
              > back.
              [Reason=javax.transaction.xa.XAException],numRepliesOwedMe=0,numRepliesOwedO
              thers=0,seconds
              > since begin=3,seconds
              left=30,XAServerResourceInfo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEA
              N1TCF]=(ServerResourceInfo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN1
              TCF]=(state=rolledback,assigned=ManagedServer2),xar=weblogic.deployment.jms.
              WrappedXAResource_com_tibco_tibjms_TibjmsXAResource@a0181b0),XAServerResourc
              eInfo[JMS_MyJMS
              > File Store]=(ServerResourceInfo[JMS_MyJMS File
              Store]=(state=rolledback,assigned=ManagedServer1),xar=null),XAServerResource
              Info[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN2TCF]=(ServerResourceIn
              fo[E4JMSDOMAIN.ManagedServer2.JMSXASessionPool.BEAN2TCF]=(state=rolledback,a
              ssigned=ManagedServer2),xar=weblogic.deployment.jms.WrappedXAResource_com_ti
              bco_tibjms_TibjmsXAResource@98f6821),SCInfo[E4JMSDOMAIN+ManagedServer1]=(sta
              te=rolledback),SCInfo[E4JMSDOMAIN+ManagedServer2]=(state=rolledback),propert
              ies=({weblogic.transaction.name=[EJB
              >
              Case463495.StatelessBean.sendMessageWrap(java.lang.Integer,java.lang.Integer
              ,java.lang.String,boolean,boolean)]}),OwnerTransactionManager=ServerTM[Serve
              rCoordinatorDescriptor=(CoordinatorURL=ManagedServer2+myhost.mycompany.com:1
              8005+E4JMSDOMAIN+t3+,
              >
              XAResources={},NonXAResources={})],CoordinatorURL=ManagedServer2+myhost.myco
              mpany.com:18005+E4JMSDOMAIN+t3+):
              > javax.transaction.xa.XAException
              > [java] at
              com.tibco.tibjms.TibjmsXAResource.end(Ljavax.transaction.xa.Xid;I)V(TibjmsXA
              Resource.java:157)
              > [java] at
              weblogic.deployment.jms.WrappedXAResource_com_tibco_tibjms_TibjmsXAResource.
              end(Ljavax.transaction.xa.Xid;I)V(Unknown
              > Source)
              > [java] at
              weblogic.transaction.internal.XAServerResourceInfo.end(Lweblogic.transaction
              .internal.ServerTransactionImpl;Ljavax.transaction.xa.Xid;I)V(XAServerResour
              ceInfo.java:1124)
              > [java] at
              weblogic.transaction.internal.XAServerResourceInfo.internalDelist(Lweblogic.
              transaction.internal.ServerTransactionImpl;I)V(XAServerResourceInfo.java:325
              > [java] at
              weblogic.transaction.internal.XAServerResourceInfo.delist(Lweblogic.transact
              ion.internal.ServerTransactionImpl;IZ)V(XAServerResourceInfo.java:255)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.delistAll(IZ)V(ServerTra
              nsactionImpl.java:1408)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.delistAll(I)V(ServerTran
              sactionImpl.java:1396)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.globalPrepare()V(ServerT
              ransactionImpl.java:1932)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.internalCommit()V(Server
              TransactionImpl.java:252)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.commit()V(ServerTransact
              ionImpl.java:221)
              > [java] at
              weblogic.ejb20.internal.BaseEJBObject.postInvoke(Lweblogic.ejb20.interfaces.
              InvocationWrapper;Ljava.lang.Throwable;)V(BaseEJBObject.java:289)
              > [java] at
              weblogic.ejb20.internal.StatelessEJBObject.postInvoke(Lweblogic.ejb20.interf
              aces.InvocationWrapper;Ljava.lang.Throwable;)V(StatelessEJBObject.java:141)
              > [java] at
              Case463495.Stateless_soycq8_EOImpl.sendMessageWrap(Ljava.lang.Integer;Ljava.
              lang.Integer;Ljava.lang.String;ZZ)V(Stateless_soycq8_EOImpl.java:112)
              > [java] at
              Case463495.Stateless_soycq8_EOImpl_WLSkel.invoke(ILweblogic.rmi.spi.InboundR
              equest;Lweblogic.rmi.spi.OutboundResponse;Ljava.lang.Object;)Lweblogic.rmi.s
              pi.OutboundResponse;(Unknown
              > Source)
              > [java] at
              weblogic.rmi.internal.BasicServerRef.invoke(Lweblogic.rmi.extensions.server.
              RuntimeMethodDescriptor;Lweblogic.rmi.spi.InboundRequest;Lweblogic.rmi.spi.O
              utboundResponse;)V(BasicServerRef.java:477)
              > [java] at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(Lweblogic.rmi.extensions.s
              erver.RuntimeMethodDescriptor;Lweblogic.rmi.spi.InboundRequest;Lweblogic.rmi
              .spi.OutboundResponse;)V(ReplicaAwareServerRef.java:108)
              > [java] at
              weblogic.rmi.internal.BasicServerRef$1.run()Ljava.lang.Object;(BasicServerRe
              f.java:420)
              > [java] at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(Lweblogic.security.
              subject.AbstractSubject;Ljava.security.PrivilegedExceptionAction;)Ljava.lang
              .Object;(AuthenticatedSubject.java:353)
              > [java] at
              weblogic.security.service.SecurityManager.runAs(Lweblogic.security.acl.inter
              nal.AuthenticatedSubject;Lweblogic.security.acl.internal.AuthenticatedSubjec
              t;Ljava.security.PrivilegedExceptionAction;)Ljava.lang.Object;(SecurityManag
              er.java:144)
              > [java] at
              weblogic.rmi.internal.BasicServerRef.handleRequest(Lweblogic.rmi.spi.Inbound
              Request;)V(BasicServerRef.java:415)
              > [java] at
              weblogic.rmi.internal.BasicExecuteRequest.execute(Lweblogic.kernel.ExecuteTh
              read;)V(BasicExecuteRequest.java:30)
              > [java] at
              weblogic.kernel.ExecuteThread.execute(Lweblogic.kernel.ExecuteRequest;)V(Exe
              cuteThread.java:197)
              > [java] at
              weblogic.kernel.ExecuteThread.run()V(ExecuteThread.java:170)
              > [java] at
              java.lang.Thread.startThreadFromVM(Ljava.lang.Thread;)V(Unknown
              > Source)
              > [java] ; nested exception is:
              > [java] javax.transaction.xa.XAException
              > [java] at
              weblogic.rjvm.BasicOutboundRequest.sendReceive()Lweblogic.rmi.spi.InboundRes
              ponse;(BasicOutboundRequest.java:108)
              > [java] at
              weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(Lweblogic.rmi.extensions.s
              erver.RemoteReference;Lweblogic.rmi.extensions.server.RuntimeMethodDescripto
              r;[Ljava.lang.Object;Ljava.lang.reflect.Method;)Ljava.lang.Object;(ReplicaAw
              areRemoteRef.java:284)
              > [java] at
              weblogic.rmi.cluster.ReplicaAwareRemoteRef.invoke(Ljava.rmi.Remote;Lweblogic
              .rmi.extensions.server.RuntimeMethodDescriptor;[Ljava.lang.Object;Ljava.lang
              .reflect.Method;)Ljava.lang.Object;(ReplicaAwareRemoteRef.java:244)
              > [java] at
              Case463495.Stateless_soycq8_EOImpl_812_WLStub.sendMessageWrap(Ljava.lang.Int
              eger;Ljava.lang.Integer;Ljava.lang.String;ZZ)V(Unknown
              > Source)
              > [java] at Case463495.Client.run()V(Client.java:103)
              > [java] at Case463495.Client.sendMessage()V(Client.java:132)
              > [java] at
              Case463495.Client.main([Ljava.lang.String;)V(Client.java:195)
              > [java] Caused by: javax.transaction.xa.XAException
              > [java] at
              com.tibco.tibjms.TibjmsXAResource.end(TibjmsXAResource.java:157)
              > [java] at
              weblogic.deployment.jms.WrappedXAResource_com_tibco_tibjms_TibjmsXAResource.
              end(Unknown
              > Source)
              > [java] at
              weblogic.transaction.internal.XAServerResourceInfo.end(XAServerResourceInfo.
              java:1124)
              > [java] at
              weblogic.transaction.internal.XAServerResourceInfo.internalDelist(XAServerRe
              sourceInfo.java:325)
              > [java] at
              weblogic.transaction.internal.XAServerResourceInfo.delist(XAServerResourceIn
              fo.java:255)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.delistAll(ServerTransact
              ionImpl.java:1408)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.delistAll(ServerTransact
              ionImpl.java:1396)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.globalPrepare(ServerTran
              sactionImpl.java:1932)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.internalCommit(ServerTra
              nsactionImpl.java:252)
              > [java] at
              weblogic.transaction.internal.ServerTransactionImpl.commit(ServerTransaction
              Impl.java:221)
              > [java] at
              weblogic.ejb20.internal.BaseEJBObject.postInvoke(BaseEJBObject.java:289)
              > [java] at
              weblogic.ejb20.internal.StatelessEJBObject.postInvoke(StatelessEJBObject.jav
              a:141)
              > [java] at
              Case463495.Stateless_soycq8_EOImpl.sendMessageWrap(Stateless_soycq8_EOImpl.j
              ava:112)
              > [java] at
              Case463495.Stateless_soycq8_EOImpl_WLSkel.invoke(Unknown Source)
              > [java] at
              weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:477)
              > [java] at
              weblogic.rmi.cluster.ReplicaAwareServerRef.invoke(ReplicaAwareServerRef.java
              :108)
              > [java] at
              weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:420)
              > [java] at
              weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubjec
              t.java:353)
              > [java] at
              weblogic.security.service.SecurityManager.runAs(SecurityManager.java:144)
              > [java] at
              weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:415)
              > [java] at
              weblogic.rmi.internal.BasicExecuteRequest.execute(BasicExecuteRequest.java:3
              0)
              > [java] at
              weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
              > [java] at
              weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
              > [java] at java.lang.Thread.startThreadFromVM(Unknown Source)
              >
              >
              > Apologies in advance if this need to be posted in the JTA news group..
              >
              > Any ideas?
              >
              > Murali
              >
              

  • Iplanet LDAP with Weblogic

    Hello All,
    I forgot the subject line. I'm trying to set up iPlanet Directory 4.1 with
    WebLogic 5.1 Sp3 on Solaris7. Weblogic will see the users I specify
    (username,groupname) but not
    the group, additionally it will allow you to login if you know the
    username and anypassword. I get the following error when loading the
    http://localhost:port/AdminRealm. I've gone through the LDAP
    properties file a million times. Lastly, now it does a core - dump
    while trying to start.
    Please help.
    Richard
    ################# Begin Error ###############################3
    java.lang.NullPointerException
    at weblogic.security.ldaprealm.LDAPDelegate.magicBunny(Compiled Code)
    at weblogic.security.ldaprealm.LDAPDelegate.addGroupMember
    (Compiled Code)
    at weblogic.security.ldaprealm.LDAPDelegate.getGroupMembers
    (Compiled Code)
    at weblogic.security.ldaprealm.LDAPDelegate.getGroupMembers
    (LDAPDelegate.java:518)
    at weblogic.security.ldaprealm.LDAPRealm.getGroupMembersInternal
    (LDAPRealm.java:81)
    at weblogic.security.acl.AbstractListableRealm.getGroupMembers
    (AbstractListableRealm.java:302)
    at weblogic.security.acl.FlatGroup.ensureFreshness
    (FlatGroup.java:149)
    at weblogic.security.acl.FlatGroup.members(FlatGroup.java:236)
    at admin.AdminRealm.composePage(Compiled Code)
    at admin.AdminServlet.service(AdminServlet.java:257)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865) at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet
    (ServletStubImpl.java:123)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet
    (ServletContextImpl.java:744)
    at weblogic.servlet.internal.ServletContextImpl.invokeServlet
    (ServletContextImpl.java:692)
    at weblogic.servlet.internal.ServletContextManager.invokeServlet
    (ServletContextManager.java:251)
    at weblogic.socket.MuxableSocketHTTP.invokeServlet
    (MuxableSocketHTTP.java:363)
    at weblogic.socket.MuxableSocketHTTP.execute
    (MuxableSocketHTTP.java:263)
    at weblogic.kernel.ExecuteThread.run(Compiled Code)

    I have the same requirement too. I have been looking at many sources and havent
    come across any that mentions anything related to this. If you come across anything
    please do let me know.
    Regards
    Vijay
    "Licheng" <[email protected]> wrote:
    >
    I also face the similar problem. In our case, one of the business requirements
    for the authentication process is that when a user is authenticated,
    but his password
    expires, the system should force the user to change password.
    With JAAS and WebLogic 7.0, I don't know the standard or "preferred"
    approach
    to this problem
    regards
    Licheng

  • LDAP and everyone group

    I am using wls version 5.1 with service pack 7. I still need to add all
    users the the "everyone" group in order to be able to authenticate. I
    thought this issue was resolved in the latest service pack. But I still
    get an exception thrown if my user is not in "everyone" group. Does
    anyone know what the status of this bug is? Is it resolved or not?
    Here is the exception:
    java.rmi.RemoteException: Security violation: insufficient permission to
    access method
    at
    weblogic.ejb.internal.BaseEJBObject.preInvoke(BaseEJBObject.java:431)
    at
    com.itginc.webtrade.ejb.LoginBeanEOImpl.loginUser(LoginBeanEOImpl.java:143)
    at
    com.itginc.webtrade.ejb.LoginBeanEOImpl_ServiceStub.loginUser(LoginBeanEOImpl_ServiceStub.java:112)
    at
    com.itginc.webtrade.servlets.LoginServlet.service(LoginServlet.java:190)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:865)
    at
    weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:106)
    at
    weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:907)
    at
    weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:851)
    at
    weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:252)
    at
    weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:364)
    at
    weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:252)
    at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)

    Glen wrote:
    >
    I just encountered this error and deleted the 'everyone' group as a workaround.We authenticate with LDAP and WL always complained about not finding the group 'everyone'. The app worked fine but I thought I'd be a good guy and add the group to LDAP. Once I did, I got your error.Could the issue be that the 'everyone' group is OK but the permissions on the group deny access? I'm searching BEA to find out the expected permissions when I found your posting.I still need the expected permissions for the 'everyone' group.According to http://www.weblogic.com/docs51/admindocs/ldap.html#changes
    .. you don't need to define the everyone group in any version after WLS 5.0
    because of the introduction of the CachingRealm.

  • How to use Domino LDAP in WebLogic Portal 8.1?

    Hi, all
    I'm trying to solve the problem of how to use Domino LDAP in WebLogic Portal 8.1. Anybody who have this experience please help me.
    Best Regards,
    Sean

    Hi,
    I just spoke to BEA and domino LDAP not supported although they gave me these
    LDAP filters that might help -
    http://support.bea.com/application?namespace=askbea&origin=ask_bea_answer.jsp&event=link.view_answer_page_solution&answerpage=solution&page=wls/S-09460.htm
    Sean Lin <[email protected]> wrote:
    Hi, all
    I'm trying to solve the problem of how to use Domino LDAP in WebLogic
    Portal 8.1. Anybody who have this experience please help me.
    Best Regards,
    Sean

Maybe you are looking for