WebLogic with WebSphere MQ as an XA resource

I have been using WebLogic MDBs with WebSphere MQ as an external JMS provider. We just bought MQ Extended Client that would let external transaction managers do XA management with MQ. I have looked at IBM's document @
          http://publibfp.boulder.ibm.com/epubs/pdf/csqzar00.pdf. This document indicates that Weblogic cannot be used to do XA with MQ; only three txn managers are mentioned - CICS, Encina, and Tuxedo.
          I don't believe that to be true because it says that it can be used with any XA compliant transaction manager. Is anyone aware of documents showing how to configure a WebLogic server (expecially MDBs) to use MQ extended client to do XA?

WL is an XA compliant TM, and many customers use it with MQ. For more information, you can start with this FAQ:
          http://e-docs.bea.com/wls/docs81/faq/interop.html#268632
          Also see the notes I've appended below.
          Finally, you can search this newsgroup - you will see that your question comes up quite a bit.
          Tom, BEA
          JMS Integration of Foreign Vendors with BEA WebLogic Server
          The following notes are derived mostly from "http://dev2dev.bea.com/technologies/jms/index.jsp".
          For additional questions, a good forum for WebLogic questions in general is "newsgroups.bea.com". These can be mined for information by using Google's newsgroup search function.
          JMS Integration Overview
          - For integration with "non-Java" and/or "non-JMS" platforms, see "Non-Java Integration Options" below.
          - For a foreign JMS vendor to participate in a WL transaction it must support XA. Specifically, it must support the javax.jms.XA* interfaces.
          - In WL versions 6.0 and up it is possible to make synchronous calls to foreign JMS vendors participate in a WL transaction as long as the foreign vendor supports XA.
          - WL 6.0 and 6.1 MDBs can be driven by foreign vendors non-transactionally. They can be driven transactionally by a select few foreign vendors (MQ is not part of the select few)
          - WL 7.0 and later, MDBs can be driven by foreign vendors transactionally and non-transationally.
          - WL 6.1 and later WL provides a messaging bridge feature. Messaging bridges forward messages between any two JMS destinations, including foreign destinations, and can transfer messages transactionally or non-transactionally.
          - WL 8.1 JMS provides additional features that simplify transactional and JNDI integration of foreign vendors. See http://edocs.bea.com/wls/docs81/jms/intro.html#jms_features
          Integration with 8.1 Details
          A good overview of 8.1 JMS interop capability is the presentation "Integrating Foreign JMS Providers with BEA WebLogic Server" here:
          http://www.bea.com/content/files/eworld/presentations/Wed_03_05_03/Application_Servers/1097-Foreign_JMS_Providers_WLS.pdf
          This document refers to helpful new 8.1 features, which simplify integration. These include:
          http://edocs.bea.com/wls/docs81/ConsoleHelp/jms_config.html#accessing_foreign_providers
          http://edocs.bea.com/wls/docs81/jms/j2ee_components.html#1033768
          And are also summarized here (under interoperability):
          http://edocs.bea.com/wls/docs81/jms/intro.html#jms_features
          Also read the MDB documentation, which extensively covers integrating foreign vendors:
          http://edocs.bea.com/wls/docs81/ejb/message_beans.html
          The 8.1 features are likely sufficient for most 8.1 integration needs, and you may not need to refer "Using Foreign JMS Providers With WLS" white-paper mentioned below.
          Integration with 6.1 and 7.0 Details
          Read the "Using Foreign JMS Providers With WLS" white-paper:
          http://dev2dev.bea.com/products/wlserver/whitepapers/jmsproviders.jsp
          Note that this white-paper does not take into account 8.1 features.
          For 7.0 read the extensive 8.1 MDB documentation, which largely also applies to 7.0:
          http://edocs.bea.com/wls/docs81/ejb/message_beans.html
          Non-Java Integration Options
          - WL JMS has a JNI based C client which is available for Windows and some UNIX platforms. This C client supports 7.0 and up, and will be officially packaged with WLS in 9.0 (virtually unchanged). The C API is currently only supported through the jms newsgroup. See "JMS C API", here:
          http://dev2dev.bea.com/technologies/jms/index.jsp
          - WL supports direct Windows COM access through its "JCOM" feature. This doesn't include the JMS API, but one can invoke EJBs which in turn invoke JMS. See
          http://e-docs.bea.com/wls/docs61/jcom.html
          http://e-docs.bea.com/wls/docs70/jcom/
          http://e-docs.bea.com/wls/docs81/jcom/
          - Similar to JCOM, but more advanced, WL supports IIOP standard based access on multiple platforms. You can use the BEA Tuxedo C client for this purpose (no license fee). This doesn't include the JMS API, but one can invoke EJBs which in turn invoke JMS. See
          http://e-docs.bea.com/wls/docs81/rmi_iiop/
          http://e-docs.bea.com/wls/docs70/rmi_iiop/
          http://e-docs.bea.com/wls/docs61/rmi_iiop/
          Unlike most other approaches, the IIOP client approach also allows the client to begin and commit user (JTA) transactions (not configured).
          - If you already have a BEA Tuxedo license, one option is communicate through BEA Tuxedo (which has various APIs on Windows) and configure a WebLogic Server to respond to these requests via the WTC bridge. Search for "WTC" in the BEA docs. Unlike most other approaches, the Tuxedo API approach also allows the client to begin and commit user (JTA) transactions.
          - Another approach is to interop via web-service standards. Or even to simply to invoke a servlet on the WL server using a basic HTTP call from Windows. These in turn can invoke the JMS API. There is a white-paper on "Interoperability Study of BEA WebLogic Workshop 8.1 and Microsoft .NET 1.1 Web Services", that demonstrates web-services here:
          http://ftpna2.bea.com/pub/downloads/WebLogic-DotNet-Interop.pdf
          - Yet another approach is to use a third party product that is designed to wrap any JMS vendor. There are even open source versions. In no particular order, here are some examples: Open3 WinJMS, CodeMesh, Active JMS, SpiritSoft
          - Finally, there are .NET/C/C++ integration libraries that not specific to JMS, some examples are JNBridge, Jace, and CodeMesh.
          Notes on MQ Remote Capable XA Clients
          Until recently, IBM MQ JMS clients could not work transactionally unless they were running on the same host as their MQ server. This is a limitation unique to MQ that was relaxed with the introduction of IBM's new "WebSphere MQ Extended Transactional Client". See:
          http://publibfp.boulder.ibm.com/epubs/pdf/csqzar00.pdf
          The product is new, and for some reason, configuration of this client seems to be tricky, even when WebLogic is not involved at all. Oddly, the main sticking point seems to be simply making sure that class paths refer to the required IBM jars:
          - Required on WLS where MQ objects are bound into JNDI:
          com.ibm.mq.jar, com.ibm.mqjms.jar
          - Required only if MQ objects are bound into JNDI on a different server:
          com.ibm.mq.jar
          If there are problems when using this client, first get it to work using a pure IBM client without any BEA classes involved. Once that is working, search the WL JMS newsgroup for answers and/or contact BEA customer support.
          Notes on Oracle AQ Integration
          If problems are encountered integrating Oracle's built-in queuing (Oracle AQ) JMS client, there is publicly available wrapper code that can aid integrating AQ directly into MDBs, JMS, or the messaging bridge. The solution is titled "Startup class to bind AQ/Referenceable objects to WLS JNDI", is not supported by BEA, and is posted to:
          http://dev2dev.bea.com/codelibrary/code/startupclass.jsp
          Caveats:
          The solution doesn't directly support concurrent consumers. Perhaps Oracle requires that concurrent consumers each have a unique JMS connection? As a work-around, parallel message processing can be achieved indirectly by forwarding AQ messages into a WL JMS destination - which do support concurrent processing.
          Up-to-date versions of Oracle may be required. For more information, google search the weblogic.developer.interest.jms newsgroup for "Oracle" and "AQ".
          The solution doesn't seem to support transactions, it may be possible to extend it to do so.
          MDB Thread Pool Notes
          WL7.0SP? and WL8.1 and later support the "dispatch-policy" field to specify which thread pool an MDB uses to run its instances. In most cases this field should be configured to help address potential performance issues and/or dead-locks:
          http://edocs.bea.com/wls/docs81/ejb/DDreference-ejb-jar.html#dispatch-policy
          (Note that "dispatch-policy" is ignored for non-transactional foreign vendors; in this case, the MDB "onMessage" callback runs in the foreign vendor's thread.)
          MDB Concurrency Notes
          Queue MDBs driven by foreign providers can run multiple instances concurrently. Topic MDBs driven by foreign providers are limited to one instance (not sure, but transactional foreign driven topic MDBs may not have this limitation). The size of the thread pool that the MDB runs in and the "max-beans-in-free-pool" descriptor limit how many instances run concurrently.
          Design Guide-Lines and Performance Tuning Notes
          The "WebLogic JMS Performance Guide" white-paper contains detailed design, performance, and tuning information for Clustering, Messaging Bridge, JMS, and MDBs.
          http://dev2dev.bea.com/products/wlserver/whitepapers/WL_JMS_Perform_GD.jsp

Similar Messages

  • Weblogic server with  Websphere Portal server

    Hi,
    I am having this peculiar problem.
    I am using Websphere Portal Server and accessing an application which is running
    on Weblogic
    6.1. I am also using struts on both the portal server and weblogic server.
    The first time I access a jsp which is on weblogic from websphere portal I get
    it fine.
    I have button on this jsp on submit of which another jsp on weblogic should come
    up.
    The problem is that on click of the button the URL which is being formed is
    <ip of weblogic>/<path of portal server>.
    I have no clue why this is happening and its driving me crazy.
    Can anyone tell me whats happening?
    Thanks
    Siri

    Siri-
    This sounds like a URL rewriting issue with whatever proxy or tool you are using
    to interface from WS to WLS. Basically, for the setup to work, any URL's that
    are contained in the content served up by your WLS instance will have to be rewritten
    such that your WS instance knows that the request is actually intended for the
    WLS server.
    -Brodi
    "Siri" <[email protected]> wrote:
    >
    Hi,
    I am having this peculiar problem.
    I am using Websphere Portal Server and accessing an application which
    is running
    on Weblogic
    6.1. I am also using struts on both the portal server and weblogic server.
    The first time I access a jsp which is on weblogic from websphere portal
    I get
    it fine.
    I have button on this jsp on submit of which another jsp on weblogic
    should come
    up.
    The problem is that on click of the button the URL which is being formed
    is
    <ip of weblogic>/<path of portal server>.
    I have no clue why this is happening and its driving me crazy.
    Can anyone tell me whats happening?
    Thanks
    Siri

  • Integration with Websphere 5.0 (EJB 2.0) problems

    Hello all,
    Although a bit new to JDO, I have been trying to integrate Kodo 2.4 with
    Websphere 5.0 (using EJB 2.0).
    I have been basically binding a PersistenceManagerFactory into JNDI via
    start-up servlet, however got the exception bellow when I tried to create
    PersistenceManagerFactory (in setSessionContext of the EJB).
    <i>JDOFatalInternalException: Could not perform automatic lookup of EJB
    container's javax.transaction.TransactionManager implementation. Please ensure
    that you are running the application from within an <b>EJB 1.1</b> compliant
    EJB container, and then set the
    com.solarmetric.kodo.ee.ManagedRuntimeProperties property to the appropriate
    value to obtain the TransactionManager.</i>
    The reference to EJB 1.1 actually scared me a bit. Does this imply that
    Kodo (2.4) does not support J2EE 1.3?
    Would you know how to set the
    com.solarmetric.kodo.ee.ManagedRuntimeProperties to make it work with WSAD
    5.0?
    Thank you,
    Petr

    Petr-
    Is the integration with Websphere 5.0 application server officially
    supported? Has anobody (that you know of) done it successfully yet?Yes, we do have reports of people using Kodo successfully from within
    Websphere. However, it should be noted that it is not as rigorously
    tested internally at SolarMetric as some other application servers (E.g.,
    JBoss and WebLogic). In short, integration is known to work, but it
    might be a little more rough around the edges than for other application
    servers (as shown in our misspelling of Websphere's TransactionManager
    implementation name).
    How do I tell Kodo to use existing Datasource managed by app server?You can have Kodo use a named DataSource by specifying the
    javax.jdo.option.ConnectionFactoryName property (see
    http://www.solarmetric.com/docs/2.4.0/docs/manual.html#javax.jdo.option.ConnectionFactoryName).
    This is often more appropriate for applications server usage, since it
    allows you to configure pooling and other information from within the
    application server's centralized configuration.
    javax.jdo.option.ConnectionDriverName=COM.ibm.db2.jdbc.app.DB2Driver
    javax.jdo.option.ConnectionURL=jdbc:db2:snetWhat kind of driver is COM.ibm.db2.jdbc.app.DB2Driver? The DB2
    configuration we use for testing with IBM's drivers is:
    javax.jdo.option.ConnectionDriverName=COM.ibm.db2.jdbc.net.DB2Driver
    javax.jdo.option.ConnectionURL=jdbc:db2://SERVER_NAME/DATABASE_NAME
    They shouldn't behave differently (I am guessing that the app driver is
    a type 2 driver or something), but it might be worth a shot to try using
    the net driver. If this fixes the problem, please let us know, because
    it will indicate that Kodo has a deficiency with one of IBM's drivers
    that we should look into resolving.
    Since I have been trying to integrate with App server, this is the
    initialization code that I use to bind PersistenceManagerFactory to JNDI.
    You may find some funny stuff there.The binding code looks fine, and you are obviously able to retrive the
    PM and start persistence operations. Note that you should also be able
    to deploy Kodo as a Resource Adapter (which allows Kodo configuration
    through the centralized Websphere configuration interface). However, I
    doubt this is part of the issue.
    So, in short, I recommend trying the following things:
    1. Using the ConnectionFactoryName to use the DataSource defined for the
    appserver, on the off chance this will fix it.
    2. Using the net driver instead of the app driver.
    3. Seeing if it will work with javax.jdo.option.Optimistic set to false
    If none of these work, please let us know, and we will continue to
    investigate other possible solutions.
    In article <[email protected]>, Petr Bulanek wrote:
    Hello Marc,
    Very good guess. Pretty much the same code worked well without App server.
    In that case, there obviously was no magic related to
    TransactionManagerFactory initialization (see bellow).
    Is the integration with Websphere 5.0 application server officially
    supported? Has anobody (that you know of) done it successfully yet?
    How do I tell Kodo to use existing Datasource managed by app server?
    Here is the basic configuration (URL, class, etc):
    javax.jdo.PersistenceManagerFactoryClass=com.solarmetric.kodo.impl.jdbc.JDBCPersistenceManagerFactory
    javax.jdo.option.ConnectionDriverName=COM.ibm.db2.jdbc.app.DB2Driver
    javax.jdo.option.ConnectionURL=jdbc:db2:snet
    javax.jdo.option.Optimistic=true
    javax.jdo.option.RetainValues=true
    javax.jdo.option.NontransactionalRead=true
    We use DB2 Version 7.2/Version 7.1 FixPak 3 for Windows, in case it helps.
    Since I have been trying to integrate with App server, this is the
    initialization code that I use to bind PersistenceManagerFactory to JNDI.
    You may find some funny stuff there.
    The new EESimpleConfiguration(true) construct seems to (by default) read
    the kodo.properties file that is part of the project.
    EEConfiguration conf = new EESimpleConfiguration(true);
    conf.setManagedRuntimeProperties(\"TransactionManagerMethod=com.ibm.ejs.jts.jta.TransactionManagerFactory.getTransactionManager\");
    conf.setManagedRuntimeClass(\"com.solarmetric.kodo.ee.InvocationManagedRuntime\");
    EEPersistenceManagerFactory pmf =
                        new EEPersistenceManagerFactory(conf);
    InitialContext ic = new InitialContext();
    ic.rebind(\"KodoPMF\", pmf);
    Thank you,
    Petr
    Marc Prud\'hommeaux wrote:
    Petr-
    It looks like DB2 doesn\'t like our attempt to close the connection
    without a rollback or commit. This is odd, since we have never
    seen this happen in our stand-alone DB2 tests. Can you let us know
    the connection details (driver, connectionURL, etc)?
    In the meantime, one possible workaround may be to turn off
    optimistic transactions (since this will cause the PM to
    only use a single Connection); can you try to specify:
    javax.jdo.option.Optimistic=false
    Also, have you tried to run this code in a non-managed environment
    (e.g., outside the application server)? I would be interested
    to know if it is related to running within an appserver.
    In article <[email protected]>, Petr Bulanek wrote:
    Hi Abe,
    Thank you for a speedo reply. You guys really are on the ball!!!
    As you suggested, the
    \\\'com.ibm.ejs.jts.jta.TransactionManagerFactory.getTransactionManager\\\'
    did the job (for others, please note that the proper package name should
    contain \\\'jts.jta\\\', not \\\'jts.jts\\\').
    Unfortunately, I got another problem. When running a method containing
    query (code bellow),
    I get SQLException complaining about \\\'Invalid transaction state\\\'.
    The method that executes the query is a stateless transactional Session
    bean.
    Thank you for your help,
    Petr
    --------------------------- DB2 - transaction state description
    CLI0116E Invalid transaction state.
    Explanation: There was a transaction in progress when SQLDisconnect was
    called.
    User Response: Call SQLTransact before calling SQLDisconnect.
    --------------------------- Exception ------------------------------------
    [2/01/03 16:34:19:050 EST] 563ddb8a SQL I
    com.solarmetric.kodo.impl.jdbc.SQL [ C:336042896; T:1446894474;
    D:118283149 ] preparing statement <369367952>: SELECT DISTINCT
    PARENTX.JDOCLASSX FROM PARENTX
    [2/01/03 16:34:19:050 EST] 563ddb8a SQL I
    com.solarmetric.kodo.impl.jdbc.SQL [ C:336042896; T:1446894474;
    D:118283149 ] executing statement <369367952>: [reused=1;params={}]
    [2/01/03 16:34:19:061 EST] 563ddb8a JDBC I
    com.solarmetric.kodo.impl.jdbc.JDBC [ C:336042896; T:1446894474;
    D:118283149 ] close:
    com.solarmetric.datasource.PoolConnection@14079b90[[requests=6;size=6;max=70;hits=0;created=6;redundant=0;overflow=0;new=6;leaked=0;unavailable=0]]
    [2/01/03 16:34:19:061 EST] 563ddb8a JDBC I
    com.solarmetric.kodo.impl.jdbc.JDBC [ C:336042896; T:1446894474;
    D:118283149 ] close connection
    [2/01/03 16:34:19:061 EST] 563ddb8a JDBC W
    com.solarmetric.kodo.impl.jdbc.JDBC [ C:null; T:1446894474; D:118283149 ]
    exception when closing connection
    [2/01/03 16:34:19:541 EST] 563ddb8a JDBC W
    com.solarmetric.kodo.impl.jdbc.JDBC TRAS0014I: The following exception
    was logged COM.ibm.db2.jdbc.DB2Exception: [IBM][CLI Driver] CLI0116E
    Invalid transaction state. SQLSTATE=25000
    atcom.solarmetric.datasource.ConnectionWrapper.close(ConnectionWrapper.java:243)
    atcom.solarmetric.datasource.DataSourceImpl$AbstractPool.close(DataSourceImpl.java:690)
    atcom.solarmetric.datasource.DataSourceImpl.close(DataSourceImpl.java:373)
    atcom.solarmetric.datasource.DataSourceImpl.close(DataSourceImpl.java:347)
    at com.solarmetric.datasource.PoolConnection.close(PoolConnection.java:70)
    atcom.solarmetric.kodo.impl.jdbc.SQLExecutionManagerImpl.close(SQLExecutionManagerImpl.java:885)
    atcom.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.release(JDBCStoreManager.java:654)
    atcom.solarmetric.kodo.impl.jdbc.ormapping.SubclassProviderImpl.getSubclasses(SubclassProviderImpl.java:274)
    atcom.solarmetric.kodo.impl.jdbc.ormapping.ClassMapping.addSubclassConditions(ClassMapping.java:1239)
    atcom.solarmetric.kodo.impl.jdbc.ormapping.ClassMapping.selectPrimaryMappings(ClassMapping.java:1218)
    atcom.solarmetric.kodo.impl.jdbc.runtime.JDBCStoreManager.executeQuery(JDBCStoreManager.java:717)
    atcom.solarmetric.kodo.impl.jdbc.runtime.JDBCQuery.executeQuery(JDBCQuery.java:92)
    at com.solarmetric.kodo.query.QueryImpl.executeWithMap(QueryImpl.java:792)
    atcom.solarmetric.kodo.query.QueryImpl.executeWithArray(QueryImpl.java:668)
    at com.solarmetric.kodo.query.QueryImpl.execute(QueryImpl.java:609)
    at com.testkodo.ejb.ControllerBean.observeHumans(ControllerBean.java:66)
    --------------------------- Failing code sample
    try {
                   PersistenceManager pm = factory.getPersistenceManager();
                   Extent ex = pm.getExtent(Parent.class, false);
                   Query q = pm.newQuery(ex, \\\"name==parName\\\");
                   q.declareParameters(\\\"String parName\\\");
                   Collection col = (Collection) q.execute(\\\"James\\\");
                   Iterator iter = col.iterator();
                   Parent pp;
                   Collection ch;
                   while (iter.hasNext()) {
                        pp = (Parent) iter.next();
                        System.out.println(pp);
                        ch = pp.getChildren();
                        Iterator it= ch.iterator();
                        while (it.hasNext()) {
                             System.out.println(it.next());
                   q.closeAll();
                   pm.close();
              } catch (Exception e) {
                   System.out.println(e);
                   throw new EJBException(e);
    Abe White wrote:
    The reference to EJB 1.1 actually scared me a bit. Does this imply that
    Kodo (2.4) does not support J2EE 1.3?
    EJB 2.0 is also supported. Sorry for the confusing error message.
    Would you know how to set the
    com.solarmetric.kodo.ee.ManagedRuntimeProperties to make it work with
    WSAD
    5.0?
    Try these settings:
    com.solarmetric.kodo.ee.ManagedRuntimeClass=\\\\
         com.solarmetric.kodo.ee.InvocationManagedRuntime
    com.solarmetric.kodo.ee.ManagedRuntimeProperties=\\\\
         TransactionManagerMethod=\\\\
         com.ibm.ejs.jts.jts.TransactionManagerFactory.getTransactionManager
    Marc Prud\'hommeaux [email protected]
    SolarMetric Inc. http://www.solarmetric.com

  • EJB communication between weblogic and websphere

    Hello:
    I have weblogic 7.1 instance running in machine A and websphere running in machine B. I want to make a call to the ejb deployed from weblogic to websphere. Any experience in this would be very helpful. Or pl. post the procedure.
    Thx in advance.

    I don't think that there is any magic here, although I've never tried it.
    All you need is the compiled EJBHome and EJBObject interfaces in the
    classpath of the calling EJB, get an InitialContext in the JNDI namespace of
    the target EJB container using the name of the JNDI InitialContext Factory,
    do a lookup on the bean making sure to do a PortableRemoteObject.narrow when
    you are casting the Home stub with the vendor specific version of
    PortableRemoteObject(and that may be the real trick), call the appropriate
    create method, and you are rolling.
    I guess the question becomes how to make sure that when you are calling
    PortableRemoteObject.narrow on the Home stub, that you get the vendor
    specific version for the EJB container and JNDI namespace from which you are
    doing the lookup.
    I guess the answer is, I'm guessing. Have you tried it?
    bill
    "nebs om" <[email protected]> wrote in message
    news:30035468.1103738722864.JavaMail.root@jserv5...
    Hello:
    I have weblogic 7.1 instance running in machine A and websphere runningin machine B. I want to make a call to the ejb deployed from weblogic to
    websphere. Any experience in this would be very helpful. Or pl. post the
    procedure.
    >
    Thx in advance.

  • Error while attempting to use WebLogic with EDS

    Hello,Previously, I have installed EDS and used the default TomCat (which I would prefer was not automatically installed).Now I want to stop using TomCat and start using WebLogic 8.x . I've gone through the docuemented steps to create the application in WebLogic, but when I attempt to access the URL for WebLogic, I recieve the following Java error:javax.servlet.ServletException: Cannot initialize essbase deployment server framework.     at com.essbase.server.plugins.http.EssbaseEnterprise.init(Unknown Source)I realize this is a generic error, but is there any documentation on this?

    I encountered the similar error before.I replaced Tomcat with WebSphere and DB2 with MySql.After I installed the EDS according to the EDS install guide file and started it,there were a lot of error happened.I don't know whether the cause of your error is same as mine.But I can tell you that there are some errors and missings in the EDS install guide pdf file.You should get help from the WebLogic expert if you really don't familiar with WebLogic

  • Apache SOAP with websphere 6.1

    I want to use Apache SOAP in websphere 6.1 since we will be reusing the framework developed already using Apache SOAP.This has been implemented only with weblogic previously.
    Now we are trying to use this in combination with websphere 6.1,Is this supported?How to proceed?

    Hi Thierry,
    When we wrote the web services layer for BEA we purposefully left out
    stateful session beans and entity beans because they did not match the
    "services" model and there is no standard way to keep the state between
    calls to the service. I believe the Apache implementation uses the HTTP
    session for this behaviour. I don't know what the problem is with the
    Apache SOAP implementation but I can try and help you either 1) use a
    stateless session bean to call your sfsb, or 2) convince me that stateful
    beans implemented outside the web services standard is something BEA should
    support.
    Sam
    "Thierry Janaudy" <[email protected]> wrote in message
    news:[email protected]..
    Hello,
    I wanted to use BEA's implementation of SOAP, but the problem is that you
    cannot call SFSB.
    Therefore I tried to install and run Apache SOAP (Which provides a service
    for SLSB, SFSB, EB).
    However, you I try to remotely list the services through:
    java -cp %CP% org.apache.soap.server.ServiceManagerClient
    http://localhost:7001/soap/servlet/rpcrouter list
    I always get
    Exception in thread "main" java.lang.NoSuchMethodError
    at org.apache.soap.util.xml.QName.<init>(QName.java:80)
    at org.apache.soap.util.xml.QName.matches(QName.java:146)
    at org.apache.soap.Envelope.unmarshall(Envelope.java:237)
    at org.apache.soap.rpc.Call.invoke(Call.java:230)
    at
    org.apache.soap.server.ServiceManagerClient.invokeMethod(ServiceManagerClien
    t.java:129)
    at
    org.apache.soap.server.ServiceManagerClient.list(ServiceManagerClient.java:1
    51)
    at
    org.apache.soap.server.ServiceManagerClient.main(ServiceManagerClient.java:2
    37)
    Do you have any idea why?
    Thx

  • Weblogic vs Websphere

    I know that this has been asked a few times but I couldn't find any recent comparisons.
    So - my company is going to adopt a J2EE platform and wants to buy an appserver. We've narrowed it down to Weblogic 8.1 or Websphere 5.2
    I know that early versions of Websphere got slated - but can anyone advise on how improved 5.1 is
    Also we are mixed ability team with some newbies to Java. We want to adopt a uniform IDE.
    Any comments on WSAD versus Weblogic Workshop. Are people using othe IDEs alongside either Websphere Server or Weblogic Server
    I like the look of Workshop - but it clearly isn't as big as WSAD - and also Weblogic have introduced the concept of Java Controls which definitely isn't standards based. However our team leader thinks that this could be an easy entry point for less experienced Developers. Any comments on any of these products much appreciated

    Hi,
    I was looking for a comparison against the latest versions of Weblogic and websphere. I was looking at the string of posts and came to a conclusion that you were in the same situation months before and you have nailed your choice as weblogic. Could you please give me some information regarding that?
    Basically am preparing a presentation with performance, scalability, features, ease of development, IDE effeciency, Integration abilities, Webservices capabilities, licensing cost and so on.

  • Weblogic and websphere colocated?

    Has anyone ever had any experience running weblogic and websphere on the same machine? If so, what were your issues?
    Thanks in advance.

    Web sphere has a wide robust features which weblogic lacks some. Like the load balancing and admin console, clustering .
    In Weblogic In many cases, code for applications deployed on WebLogic Server is arbitrarily structured and depends on the build process to make sense of it all. The implication of this is that existing code organization will very likely have to be changed as part of the migration effort. This may be very difficult (or even impossible) to accomplish while maintaining links to your code's history. Some organizations choose simply to archive their history and start fresh.
    In WebSphere, Packaged with each module is an XML deployment descriptor that describes the organization of the components in the module and how they are configured at run time. hence applications can be migrated easily.

  • Weblogic and Websphere communication!!

    Hi Friends,
    I have an EJB HelloWorld deployed on both servers(Weblogic and Websphere) and these beens are accessible easily from their respective client servlets, which is the easy part.
    Now what I want to try is access the bean's methods on Weblogic server from a bean on Websphere server and vice versa. This is where I want some ideas from the gurus please.
    e.g. hello() method of the EJB (HelloWeblogic) in Weblogic server prints the message "Hello from Weblogic" and the hello() method of the EJB (HelloWebsphere) in Websphere server prints the message "Hello from Websphere". Now I want to know what do I need to do so that I am able to execute hello() of the HelloWeblogic EJB, from HelloWebsphere EJB and vice versa.
    I am also new to EJB, but I think I am making my way slowly.
    Any help/ideas/code samples would be really appreciated.
    Please feel free to ask any questions.
    Regards
    Rajeev

    As far as I can see the standard way would be to lookup
    the ejbs-home in the others JNDI context. After that proceed
    as you are used to.
    Troubles (or some unlikely behaviours) could occur if your beans are
    served by the same interfaces.
    But Dynamic Stub loading via RMI should prevent you from any problems with non existing stub/skels, etc.
    You could only run into problems when stub/skel-implementation-classes where named equally (by full qualifier) in both app-servers. This should never happen. (weblogic.SomeWLStubClass != ...websphere...SomeStubClass)
    Read RMI-Specification for further details on dynamic class-loading in
    the RMI process:
    http://java.sun.com/products/jdk/1.1/docs/guide/rmi/spec/rmi-arch.doc.html
    or j2ee-tutorial on how to resolve JNDI-Contexts.
    Hope it helps!
    Alexander Sack

  • Weblogic and websphere

    hi
    could anybody tell what is the basic difference between weblogic and websphere.
    thanks
    suru

    Web sphere has a wide robust features which weblogic lacks some. Like the load balancing and admin console, clustering .
    In Weblogic In many cases, code for applications deployed on WebLogic Server is arbitrarily structured and depends on the build process to make sense of it all. The implication of this is that existing code organization will very likely have to be changed as part of the migration effort. This may be very difficult (or even impossible) to accomplish while maintaining links to your code's history. Some organizations choose simply to archive their history and start fresh.
    In WebSphere, Packaged with each module is an XML deployment descriptor that describes the organization of the components in the module and how they are configured at run time. hence applications can be migrated easily.

  • J2EE replaces BEA Weblogic, IBM WebSphere, Orion or JRun

    BEA Weblogic, IBM WebSphere absolutely provide stronger ability to support enterprise applications.
    I want to know whether J2EE can be used in deploying a commercial web site with multi-tier architecture. For example, to handle hundreds concurrent requests, to balance work load to some extent.
    Thanks.

    J2EE is a platform specification. And WebLogic, WebSphere, JRun etc. are vendor specific products that implement APIs from that platform standard.
    It seems you are talking about the refrence implementation of J2EE that comes with J2EE SDK.
    See http://java.sun.com/j2ee/faq.html Especially the answers therein to the two questions...
    1. What is the purpose of the Reference Implementation?
    2. Why don't you allow the binary Reference Implementation to be deployed or redistributed?

  • WebLogic 8 WebSphere 6.0.1 - T3S - NoClassDefFound

    Hi,
    Im using WebSphere 6.0.1 as a client and WebLogic 8.1 as my server. I want to connect to weblogic with t3s-protocol.
    As a standalone, not running on websphere, the connection works fine. But if I include my client to a WebSphere Portlet, I get the following error:
    [13.12.07 16:00:07:510 CET] 00000072 ServletWrappe E SRVE0068E: Die Methode service() für das Servlet StaticContentPortlet konnte nicht aufgerufen werden. Ausgelöste Ausnahme: java.lang.NoClassDefFoundError: weblogic/jndi/WLInitialContextFactoryDelegate
         at weblogic.jndi.Environment.getContext(Environment.java:166)
         at weblogic.jndi.Environment.getInitialContext(Environment.java:145)
         at com.test.t3s.TwoWaySSL.init(Unknown Source)
         at com.test.portlet.StaticContentPortlet.doView(Unknown Source)
         at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235)
         at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
         at com.ibm.wps.pe.pc.std.cmpf.impl.PortletFilterChainImpl.render(PortletFilterChainImpl.java:144)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.dispatch(PortletServlet.java:130)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.doGet(PortletServlet.java:69)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
         at com.ibm.wps.pe.pc.std.cache.CacheablePortlet.service(CacheablePortlet.java:393)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1572)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java(Compiled Code))
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:670)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:204)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:168)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.java:97)
         at com.ibm.wps.pe.pc.std.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:110)
         at com.ibm.wps.pe.pc.PortletContainerImpl.doRenderPortlet(PortletContainerImpl.java:587)
         at com.ibm.wps.pe.ext.render.AbstractRenderManager.performService(AbstractRenderManager.java:247)
         at com.ibm.wps.pe.pc.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:115)
         at com.ibm.wps.engine.tags.PortletRenderTag.doStartTag(PortletRenderTag.java:161)
         at com.ibm._jsp._Control._jspx_meth_portal$1skin_portletRender_0(_Control.java:953)
         at com.ibm._jsp._Control._jspx_meth_portal$1logic_if_4(_Control.java:985)
         at com.ibm._jsp._Control._jspService(_Control.java:582)
    Has somebody an idea, why it runs as a standalone version and why it is not running on WebSphere as a portlet?
    Thanks sebbay

    Sebastian Bayerlein <> writes:
    You should use IIOP in this instance. Trying to use the full WL client
    is only going to lead to this sort of problem. Support have an
    interoperability document for setting this kind of thing up, you
    should probably ask for it.
    andy
    Hi,
    Im using WebSphere 6.0.1 as a client and WebLogic 8.1 as my server. I want to connect to weblogic with t3s-protocol.
    As a standalone, not running on websphere, the connection works fine. But if I include my client to a WebSphere Portlet, I get the following error:
    [13.12.07 16:00:07:510 CET] 00000072 ServletWrappe E SRVE0068E: Die Methode service() für das Servlet StaticContentPortlet konnte nicht aufgerufen werden. Ausgelöste Ausnahme: java.lang.NoClassDefFoundError: weblogic/jndi/WLInitialContextFactoryDelegate
         at weblogic.jndi.Environment.getContext(Environment.java:166)
         at weblogic.jndi.Environment.getInitialContext(Environment.java:145)
         at com.test.t3s.TwoWaySSL.init(Unknown Source)
         at com.test.portlet.StaticContentPortlet.doView(Unknown Source)
         at javax.portlet.GenericPortlet.doDispatch(GenericPortlet.java:235)
         at javax.portlet.GenericPortlet.render(GenericPortlet.java:163)
         at com.ibm.wps.pe.pc.std.cmpf.impl.PortletFilterChainImpl.render(PortletFilterChainImpl.java:144)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.dispatch(PortletServlet.java:130)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletServlet.doGet(PortletServlet.java:69)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:743)
         at com.ibm.wps.pe.pc.std.cache.CacheablePortlet.service(CacheablePortlet.java:393)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.service(ServletWrapper.java:1572)
         at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java(Compiled Code))
         at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.include(WebAppRequestDispatcher.java:670)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:204)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:168)
         at com.ibm.wps.pe.pc.std.invoker.impl.PortletInvokerImpl.render(PortletInvokerImpl.java:97)
         at com.ibm.wps.pe.pc.std.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:110)
         at com.ibm.wps.pe.pc.PortletContainerImpl.doRenderPortlet(PortletContainerImpl.java:587)
         at com.ibm.wps.pe.ext.render.AbstractRenderManager.performService(AbstractRenderManager.java:247)
         at com.ibm.wps.pe.pc.PortletContainerImpl.renderPortlet(PortletContainerImpl.java:115)
         at com.ibm.wps.engine.tags.PortletRenderTag.doStartTag(PortletRenderTag.java:161)
         at com.ibm._jsp._Control._jspx_meth_portal$1skin_portletRender_0(_Control.java:953)
         at com.ibm._jsp._Control._jspx_meth_portal$1logic_if_4(_Control.java:985)
         at com.ibm._jsp._Control._jspService(_Control.java:582)
    Has somebody an idea, why it runs as a standalone version and why it is not running on WebSphere as a portlet?
    Thanks sebbay

  • Essbase with Websphere

    Hi All,
    Can anyone please suggest which version of Essbase supported Websphere ? What are the Pros and cons if we go with websphere instead of weblogic ?
    Our company is planning to go with Essbase 11.1.2.1. So it is expected to support websphere by the end of 2011. Please advice.
    Highly appreciate your help.
    Thanks

    Statement of Direction - EPM System Continued Support for IBM WebSphere Application Server [ID 1152377.1]
    Modified 04-JAN-2011 Type ANNOUNCEMENT Status PUBLISHED
    In this Document
    What is being announced?
    Applies to:
    Hyperion Disclosure Management - Version: 11.1.2.0.00 and later [Release: 11.1 and later ]
    Hyperion Essbase - Version: 11.1.2.0.00 and later [Release: 11.1 and later]
    Hyperion Performance Scorecard - Version: 11.1.2.0.00 and later [Release: 11.1 and later]
    Hyperion Planning - Version: 11.1.2.0.00 and later [Release: 11.1 and later]
    Hyperion Profitability - Version: 11.1.2.0.00 and later [Release: 11.1 and later]
    Information in this document applies to any platform.
    What is being announced?
    STATEMENT OF DIRECTION
    Purpose
    This Statement of Direction provides a notice of future support for IBM WebSphere Application Server planned with a forthcoming release of Oracle’s Hyperion Enterprise Performance Management System. It is intended solely to help you assess the business benefits of the product and planning for the implementation the product features described.
    Disclaimer
    This document, in any form - software or printed matter - contains proprietary information that is the exclusive property of Oracle. Your access to and use of this confidential material is subject to the terms and conditions of your Oracle Software License and Service Agreement, which has been executed and with which you agree to comply. This document and information contained herein may not be disclosed, copied, reproduced, or distributed to anyone outside Oracle without prior written consent of Oracle. This document is not part of your license agreement, nor can it be incorporated into any contractual agreement with Oracle or its subsidiaries or affiliates.
    This document is for informational purposes only and is intended solely to assist you in planning for the implementation and upgrade of the product features described. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described in this document remains at the sole discretion of Oracle.
    Due to the nature of the product architecture, it may not be possible to safely include all features described in this document without risking significant destabilization of the code.
    Statement of Direction
    EPM System release 11.1.2 did not include support for IBM WebSphere Application Server. This was done only as a short-term and temporary condition. Current plans call for full certification of IBM WebSphere Application Server with EPM System release 11.1.2 Patch Set 2, with availability planned for 2HCY2011. Please note that customers who have deployed EPM System release 11.1.2 or 11.1.2.1(when available) will be able to apply this patch set to those releases.
    Oracle maintains its commitment to supporting Hyperion Enterprise Performance Management System on the broadest spectrum of software and hardware platforms. It is expected that IBM WebSphere Application Server as well as IBM DB2, AIX and Tivoli Directory Server will continue playing an important role in this regard and will continue to be supported in our roadmap of EPM System releases.
    Related
    --------------------------------------------------------------------------------

  • Creating UserMembersRule with conditions on the value of resource attribute

    Hi all.
    I am trying to create a UserMembersRule to be used for provisioning an Organization. This rule should select users with a given value for an attribute mapped in a distant Resource.
    For instance, it would select all users with "typeTest = test1" in the "Simu1" Resource. Most examples I have seen by now do this for the Waveset resource (querying attributes which are in the IDM Schema, not in distant Resources)
    Form the results I have had, I suppose the first syntax (in which the Rule returns a list of AttributeCondition) doesn't work in this case.
    I will still give you several syntax I tried to do this :
    PLEASE NOTE that I've added "<" characters before each <<s> and <</s> tag, to prevent these from being interpreted by the Forum engine...
    Syntax 1 :
    <Rule authType='UserMembersRule' id='#ID#Rule:CustomTestRule1' name='Custom Test Rule 1' primaryObjectClass='Rule'>
    <block trace='true' name='CustomTestRule1'>
    <list>
    <new class='com.waveset.object.AttributeCondition'>
    *<<s>accounts[Simu1].typeTest<</s>*
    <<s>equals<</s>
    <<s>type1<</s>
    </new>
    </list>
    </block>
    <MemberObjectGroups>
    <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
    </MemberObjectGroups>
    </Rule>
    Syntax 2 :
    <Rule authType='UserMembersRule' id='#ID#Rule:CustomTestRule1' name='Custom Test Rule 1' primaryObjectClass='Rule'>
    <block trace='true' name='CustomTestRule1'>
    <list>
    <new class='com.waveset.object.AttributeCondition'>
    *<<s>typeTest<</s>*<!--Note that typeTest is mapped in Simu1's configuration-->
    <<s>equals<</s>
    <<s>type1<</s>
    <</new>
    </list>
    </block>
    <MemberObjectGroups>
    <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
    </MemberObjectGroups>
    </Rule>
    Syntax 3 :
    <Rule authType='UserMembersRule' id='#ID#Rule:CustomTestRule1' name='Custom Test Rule 1' primaryObjectClass='Rule'>
    <block trace='true' name='CustomTestRule1'>
    <list>
    <new class='com.waveset.object.AttributeCondition'>
    *<<s>waveset.typeTest<</s>*
    <<s>equals<</s>
    <<s>type1<</s>
    </new>
    </list>
    </block>
    <MemberObjectGroups>
    <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
    </MemberObjectGroups>
    </Rule>
    Syntax 4 :
    <Rule authType='UserMembersRule' id='#ID#Rule:CustomTestRule1' name='Custom Test Rule 1' primaryObjectClass='Rule'>
    <block trace='true' name='CustomTestRule1'>
    <list>
    <new class='com.waveset.object.AttributeCondition'>
    *<<s>Simu1.typeTest<</s>*
    <<s>equals<</s>
    <<s>type1<</s>
    </new>
    </list>
    </block>
    <MemberObjectGroups>
    <ObjectRef type='ObjectGroup' id='#ID#Top' name='Top'/>
    </MemberObjectGroups>
    </Rule>
    Then, since it didn't work, I tried the second syntax, in which the Rule returns a list of accountIds (in the form of "accountId:Resource") : as the examples on the web and in Waveset's documentation suggested, I queried the Resource with "com.waveset.ui.FormUtil.getResourceObjects".
    Syntax 5 :
    <Rule authType='UserMembersRule' id='#ID#Rule:CustomTestRule2' name='Custom Test Rule 2' primaryObjectClass='Rule'>
    <defvar name='Members'>
    <block trace='true' name='CustomTestRule2'>
    <defvar name='MembersNames'>
    <list/>
    </defvar>
    <dolist name='person'>
    <invoke class='com.waveset.ui.FormUtil' name='getResourceObjects'>
    <ref>context</ref>
    <<s>User<</s>
    <<s>Simu1<</s>
    <map>
    <<s>searchFilter<</s>
    <<s>
    (typeTest=type1)
    <</s>
    </map>
    </invoke>
    <append name='MembersNames'>
    <concat>
    <ref>person.waveset.accountId</ref>
    <<s>:Lighthouse<</s>
    </concat>
    </append>
    </dolist>
    <ref>MembersNames</ref>
    </block>
    </defvar>
    <ref>Members</ref>
    </Rule>
    This doesn't work, the "getResourceObjects" method returns null...
    Then I tried replacing the "searchFilter" option with a "searchAttrsToGet = typeTest" option, but this throws the following exception :
    com.waveset.util.WavesetException: Can't call method getResourceObjects on class com.waveset.ui.FormUtil
    ==> com.waveset.util.WavesetException: Unsupported option 'searchAttrsToGet'.
    However the "searchAttrsToGet" option is listed in the Javadoc of Sun IDM !
    I can't grasp why this doesn't work... Has any of you tried to do something similar, to give me an example ?
    Thanks,
    Alexis
    Edited by: user8989858 on Oct 4, 2010 3:56 AM

    This doesn't work, the "getResourceObjects" method returns null...The method responsible for listing objects in SimulatedResourceAdapter.java looks like this, sorry:
         public ArrayList listObjects(String type, Map options) {
             // ArrayList result = null;
             // return new ArrayList(_objects.keySet());
             return null;
         }

  • Using XML with websphere jdbc adapter 2.6 on 11.2.0.2

    Hi,
    while upgrading a DB from 10g to 11R2, the developers encountered problems with the websphere adapter for JDBC while using XML.
    the adapter is working with the oracle XML libraries such as xmltype_lib and the adapter fails to run the package procedures (specifically xmltype.createxml).
    to my understanding, it works with 11R1 (the dev team tested it), and my guess is that the implementation of the xmltype_lib library changed in 11R2.
    any idea how to approach this issue? is there any known overall changes to xmltype_lib in 11R2 ? if my assumption is correct there should be no problem fixing this issue by compiling older libraries or some sort of similar approach.

    If you ask this question in a Java forum you are looking for someone that has run into this before and found a solution - what you need is someone experienced with Websphere, so you really should ask in a Websphere forum (which you can find on the IBM website).
    But this part of your question:
    is there any known overall changes to xmltype_lib in 11R2 ?relates to the Oracle DBMS which takes it out of the realm of Java altogether. If you want an answer to that, again, ask in the right forum. I'm guessing this one:
    XML DB

Maybe you are looking for