Unable to create a transacted JMS Session

          We have some code that worked perfectly under wls7.0 and earlier, but refuses to
          work under wls8.1. In our situation, we are unable to create a JMS Session with
          internal transactions.
          The result of the following code
          System.out.println("transacted_=" + transacted_);
          tsession=tcon.createTopicSession(transacted_, Session.AUTO_ACKNOWLEDGE);
          System.out.println("session.getTransacted()=" + tsession.getTransacted());
          is the following
          transacted_=true
          session.getTransacted()=false
          We have tried using xa true and false; but commonly use false.
          //from config.xml
          <JMSConnectionFactory JNDIName="corej2ee.jms.JMSConnectionFactory"
          Name="CoreJMSConnectionFactory" Targets="myserver"/>
          thanks,
          jim
          

An alternative is to modify the servlet code to use global (user)
          transactions instead of local (transacted session)
          transactions - the performance will likely be the same in your case -
          or may actually improve due to the activation of the pooling code.
          jim stafford wrote:
          > You were correct about us using the resource-ref. The documentation seemed to indicate
          > that our servlet code should have worked as initially developed, however the new
          > changes work
          >
          > //replace resource-ref lookup with env-entry to allow transacted JMS
          > //sessions. This is new with wls8.1
          > //tconFactory = (TopicConnectionFactory)
          > // ctx.lookup("java:comp/env/jms/topicFactory");
          > String factoryName =
          > (String)ctx.lookup("java:comp/env/jms/myConnectionFactory");
          > System.out.println("using global jndi name:" + factoryName);
          > tconFactory = (TopicConnectionFactory)
          > ctx.lookup(factoryName);
          > tcon = tconFactory.createTopicConnection();
          >
          > System.out.println("transacted_=" + transacted_);
          > tsession=tcon.createTopicSession(transacted_, Session.AUTO_ACKNOWLEDGE);
          > System.out.println("session.getTransacted()=" + tsession.getTransacted());
          >
          > --- output
          > Looking up topic connection factory
          > using global jndi name:corej2ee.jms.JMSConnectionFactory
          > transacted_=true
          > session.getTransacted()=true
          >
          > Tom Barnes <[email protected]> wrote:
          >
          >>Hi Jim,
          >>
          >>My first thought is that the app is running
          >>on the WL server and that the app is using EJB "resource
          >>references" to indirectly access its JMS resources.
          >>Stricter J2EE compliance in 8.1 causes JMS resources
          >>accessed via resource references to ignore the transacted flag.
          >>
          >>See "J2EE Compliance" under:
          >>http://edocs.bea.com/wls/docs81/jms/j2ee_components.html#1033768
          >>
          >>The work-around is to directly specify the JNDI name
          >>of the CF in the app directly instead of looking it up
          >>via a resource reference.
          >>
          >>Please let me know if this helps.
          >>
          >>Tom
          >>
          >>jim stafford wrote:
          >>
          >>
          >>>We have some code that worked perfectly under wls7.0 and earlier, but
          >>
          >>refuses to
          >>
          >>>work under wls8.1. In our situation, we are unable to create a JMS
          >>
          >>Session with
          >>
          >>>internal transactions.
          >>>
          >>>The result of the following code
          >>>
          >>>System.out.println("transacted_=" + transacted_);
          >>>tsession=tcon.createTopicSession(transacted_, Session.AUTO_ACKNOWLEDGE);
          >>>System.out.println("session.getTransacted()=" + tsession.getTransacted());
          >>>
          >>>is the following
          >>>
          >>>transacted_=true
          >>>session.getTransacted()=false
          >>>
          >>>We have tried using xa true and false; but commonly use false.
          >>>
          >>>//from config.xml
          >>><JMSConnectionFactory JNDIName="corej2ee.jms.JMSConnectionFactory"
          >>> Name="CoreJMSConnectionFactory" Targets="myserver"/>
          >>>
          >>>thanks,
          >>>jim
          >>
          >
          

Similar Messages

  • MOPZ issue :Unable to create new transaction

    Hello All,
    We have recently installed ECC6 EHP5 ready, and now want to apply the latest patches for it.
    when I try to create new transaction from DSWP-->change Management -->Maintenance Optimizer -->Crete new trasaction  it is throwing an error .
    I have sufficient authorizations from both ends (solmon system and to my s-user)
    Solmon roles  -->YY(SOLMAN_BASIS_MAINTAIN)     
                                YY(SOLMAN_DSWP_ADMIN)          
                                YY(SOLMAN_ISSUE_MGMT_MAIN)     
                                YY(SOLMAN_LANDSCAPE_MAIN)     
    S-User Roles  --> Maintain System Data Authorizations
    System Details:
    EHP1 SOLMON 7.0
    AIX5.3/ORACLE 10g
    Can any one guide me what is the exact problem and how to avoid the same.
    ERROR Log from the dump raised
    A RAISE statement in the program "CL_SM_DATA_SENDER_RFC=========CP" raised the
    exception
    condition "NOT_FOUND".
    Since the exception was not intercepted by a superior
    program, processing was terminated.
    Short description of exception condition:
    For detailed documentation of the exception condition, use
    Transaction SE37 (Function Library). You can take the called
    function module from the display of active calls.
    url level error log which showed on the browser
    Error when processing your request
    What has happened?
    The URL http://ussappsm00.corpnet2.com:8055/sap/bc/webdynpro/sap/wda_mopz_plan was not called due to an error.
    Note
    The following error text was processed in the system PSM : Exception condition "NOT_FOUND" raised.
    The error occurred on the application server ussappsm00_PSM_55 and in the work process 0 .
    The termination type was: RABAX_STATE
    The ABAP call stack was:
    Method: GET_DESTINATION of program CL_SM_DATA_SENDER_RFC=========CP
    Method: GET_ASSIGNED_SUSERS of program CL_MO_SMP_ADAPTER=============CP
    Method: LOAD_SHORT_TEXT of program /1BCWDY/LSBW1CHLCWA0SWHM02KO==CP
    Method: LOAD_CONTEXT of program /1BCWDY/LSBW1CHLCWA0SWHM02KO==CP
    Method: IF_COMPONENTCONTROLLER~LOAD_CONTEXT of program /1BCWDY/LSBW1CHLCWA0SWHM02KO==CP
    Method: HANDLEDEFAULT of program /1BCWDY/LSBW1CHLCWA0SWHM02KO==CP
    Method: IF_WDR_VIEW_DELEGATE~WD_INVOKE_EVENT_HANDLER of program /1BCWDY/LSBW1CHLCWA0SWHM02KO==CP
    Method: INVOKE_EVENTHANDLER of program CL_WDR_DELEGATING_VIEW========CP
    Method: NAVIGATE of program CL_WDR_CLIENT_APPLICATION=====CP
    Method: DO_NAVIGATION of program CL_WDR_WINDOW_PHASE_MODEL=====CP
    What can I do?
    If the termination type was RABAX_STATE, then you can find more information on the cause of the termination in the system PSM in transaction ST22.
    If the termination type was ABORT_MESSAGE_STATE, then you can find more information on the cause of the termination on the application server ussappsm00_PSM_55 in transaction SM21.
    If the termination type was ERROR_MESSAGE_STATE, then you can search for more information in the trace file for the work process 0 in transaction ST11 on the application server ussappsm00_PSM_55 . In some situations, you may also need to analyze the trace files of other work processes.
    If you do not yet have a user ID, contact your system administrator.
    Error code: ICF-IE-http -c: 800 -u: RRD42469 -l: E -s: PSM -i: ussappsm00_PSM_55 -w: 0 -d: 20110715 -t: 041437 -v: RABAX_STATE -e: RAISE_EXCEPTION
    HTTP 500 - Internal Server Error
    Your SAP Internet Communication Framework Team
    Awaiting your response.
    Best Regards
    Rakesh

    Hi,
    You will need the standard SAP Change Management work center role assigned to you. If custom role it should be derived from this role SAP_SMWORK_CHANGE_MAN
    Regards,
    Srikishan

  • Unable to create sales transaction in POSDM though BAPI

    Hi
    ICurrently I am trying to create sales transaction in POSDM which is coming from POS thru XI to POSDM. But the BAPI  /POSDW/CREATE_TRANSACTIONS_EXT is throwing an error
    " Error determining sales item category for code 2001"
    It was working perfectly fine in development. I  have imported all transports from development to quality sytem. we also have BI plant and article data in our system. But not sure if anything other than this needs to be done.
    Thanks
    Naina

    Hi Amit,
    I would recommend you to raise the same query in the forumSAP CRM: Mobile Applications which is dedicated to queries related to mobile application and where you have more chances of getting the answer.
    <b>Reward points if my post helps!!</b>
    Best regards,
    Vikash

  • Unable to create unique transaction, please try again later!

    What do I do with this message? My paypal works great and im having no problems. But when I try to buy an item from some sites I get this message over and over again. Do I need to edit some of my paypal settings in order to get this away. please help me out. Thanks.

    Hi zkessler -- I sent you a private message about your post so we can see what's going on and help you out.  Please get back to me when you're able.  Thanks!
    Karl
    Verizon Support
    Notice: Content posted by Verizon employees is meant to be informational and does not supersede or change the Verizon Forums User Guidelines or Terms or Service, or your Customer Agreement Terms and Conditions or Plan.

  • How to create bdc for fbs1 using both call transaction and session

    Hi Friends,
    i have one problem with tcode FBS1, i need to create a bdc program for both call transaction and session method using subroutine.
    first call transaction needs to execute if there is an error sesion has to execute. if u have code please forward.
    thanks in advance.
    chandramouli pothugunta

    where as in call transaction we can do error handling explictly.those errors  are stored in one file .this file will send to the error log(session method),i.e session log.
    in the above case we use both call transaction n session method at time in one program.sample code is below ,go through it .
    data : begin of itxk01 occurs 0,
    end of itxk01.
    data : bdcdata like itbdcdata occurs 0 with header line.
    data : itbdcmsgcoll like itbdcmsgcoll occurs 0 with header line,
             itxk01 like itxk01-dup occurs 0 with header line.
    call gui-upload.
    loop at itxk01.
    refresh itxk01.
    perform bdc-dynpr0 using 'prg' 'scr'
    perform bdc-dynfld using fnam fval
    call transaction 'xk01' using bdcdata mode 'a' update 's' messages into itbdcmsgcoll.
    if sy-subrc ne 0.
    append itxk01 into  itxk01-dup.
    endif.
    endloop.
    if not itxk01-dup[] is initial.
    refresh itck01.
    call bdc_open_group
    itxk01 = itxk01-dup.
    loop at itxk01.
    refresh itxk01.
    perform bdc-dynpr0 using 'prg' 'scr'
    perform bdc-dynfld using fnam fval
    call bdc-insert.
    endloop.
    call bdc-close-group.
    form bdc-dynpr0 using pr sc
    endform .
    form bdc-field  using fnam faval
    endform.
    this will help u.
    reward points for me
    kiran

  • Unable to create a 'Z' for se16 transaction

    Hi everyone,
    we have a requirement where we are unable to create a Z for transaction SE16.
    I went to se93 and checked it was a function pool so i went to SE80 to make a copy of standard function group SETB to ZSETB.
    it made a copy of it anf I copied all the FM's and made a Z of those.
    Once it is done. When I activate it it give a lot of errors , I have checked it and made sure that it is copying entire Function Group but all are fine.
    My system is ECC6.0, earlier we had ZE16 which is a replica of SE16 and this had a lot of problem like ending in dumps , so we thought we would make a new Z transaction for SE16, but we get many error.
    Please try it out once in ur system before U suggest me a change to be made.
    Regards,
    Raj

    It is always best to minimize such issues by making a copy of programs or function modules where changes are needed to add new functionality. Also this would ensure any patches/notes  added in future would have minimum impact on your clones.
    -Cheers

  • The pooled JMS session is enlisted in another transaction error

    I have an MDB with pool size 2 deployed in weblogic 9.2.3(linux). I see the following error in server logs.
    <May 27, 2009 7:32:26 AM CDT> <Error> <EJB> <BEA-010079> <An error occurred while attempting to receive a message from JMS for processing by a message-driven bean: javax.jms.JMSException: [J2EE:160054]The pooled JMS session is enlisted in another transaction and may not be used elsewhere
    The exception is : javax.jms.JMSException: [J2EE:160054]The pooled JMS session is enlisted in another transaction and may not be used elsewhere
         at weblogic.deployment.jms.JMSExceptions.getJMSException(JMSExceptions.java:22)
         at weblogic.deployment.jms.WrappedTransactionalSession.enlistInTransaction(WrappedTransactionalSession.java:196)
         at weblogic.deployment.jms.WrappedMessageConsumer.receive(WrappedMessageConsumer.java:198)
         at weblogic.ejb.container.internal.JMSMessagePoller.processOneMessage(JMSMessagePoller.java:297)
         at weblogic.ejb.container.internal.JMSMessagePoller.pollContinuously(JMSMessagePoller.java:394)
         at weblogic.ejb.container.internal.JMSMessagePoller.pollForParent(JMSMessagePoller.java:517)
         at weblogic.ejb.container.internal.JMSMessagePoller.run(JMSMessagePoller.java:533)
         at java.lang.Thread.run(Thread.java:595)
    >
    any idea why this error is coming??

    Looks it is like a bug, you can ask patch for from support.

  • Quick install of RDS "unable to create the session collection"

    Simple as new virtual server, not touched. Had this happen in the past as well. When I attempt to run the Quick Install of RDS I get "unable to create the session collection" on the Session Collection stage. Then when I go to add roles or features
    the "session-based desktop deployment" option is greyed out.
    Clearly this is broken, and has been for a long time.
    Why in FUCK hasn't this been fixed?
    Why in FUCK are Microsoft talking Windows 10 and new Server version when shit like this isn't fixed?

    Hi Allister,
    Thank you for posting in Windows Server Forum.
    Sorry to hear about your hatred regarding the product. But the error which you are facing suggest that you can’t create the session collection, this generally happens when something went wrong during installation of RDSH role. You can try to remove the role
    using server manager and then perform reboot of server. And after that again use server manager to add the role again.
    Please follow the test lab guide to install from the scratch, you'd better not install the RDSH on the DC.
    Test Lab Guide: Remote Desktop Services Publishing 
    http://technet.microsoft.com/en-us/library/hh831442
    Hope it helps!
    Thanks.
    Dharmesh Solanki
    TechNet Community Support

  • DRM-61026: Unable to create user session for the following reason: Login failed. Invalid user name or password.

    All Im very new to Oracle DRM and Im trying to get the app setup on Windows server running SQL Server 2008.  When I try to login to the Web Client I keep getting this error.
    DRM-61026: Unable to create user session for the following reason: Login failed. Invalid user name or password.
    Can you please help

    This might be due to The 'Oracle Instance' path may not have been set to a path relative to the 'CSS Bridge Host' (i.e. the Foundation Services machine) on the Configuration > Host Machines > CSS > General tab of the DRM Configuration Utility.
    if this is the case then
    1. Open the DRM Configuration Console.
    2. Go to the Configuration > Host Machines > CSS > General tab of the DRM Configuration Utility.
    3. Ensure that the path in 'Oracle Instance' has been set relative to the 'CSS Bridge Host' (i.e. the Foundation Services machine defined in 'CSS Bridge Host').
    4. If corrections are made to 'Oracle Instance' then restart the DRM services to pick up the change.
    Thanks,
    ~KKT~

  • Unable to create/cleanup persistent session data cache

    Hi all
    After the iPlanet Webserver 4.1 SP12 starts up the following entries appears in the error log file:
    [14/Oct/2003:09:24:48] info ( 5999): successful server startup
    [14/Oct/2003:09:24:48] info ( 5999): iPlanet-WebServer-Enterprise/4.1SP12 BB1-12/18/2002 14:18
    14/Oct/2003:09:24:49] catastrophe ( 5999): Unable to create/cleanup persistent session data cache
    What does the last entry mean?
    Thanks for any help :-}
    Best regards,
    Jean-Claude

    Check permissions, disk space of following dirs:
    server_root/https-instance/ClassCache/
    server_root/https-instance/SessionData/
    Try to:
    Clear Session Data
    Delete JSP Class Cache Files
    using the Session Data link under Admin Server GUI Java tab
    Hope it helps!

  • Unable to create reference-org.omg.CORBA.OBJ_ADAPTER(Session- BMPEntityEJB)

    Hi All
    I am having following senerio with Sun One Application Server 7 on Win 2000.
    UserRegistrationBean (Java Client) -> RegistrationBean (Session EJB) -> UserBean (Entity EJB)
    The Java Client lookup and invokes Session EJB. It works fine.
    Further, when the Session EJB calls the Entity EJB I get the following exception.
    SEVERE: IOP5013: Unable to create reference: [org.omg.CORBA.OBJ_ADAPTER:   vmcid: SUN  minor code: 1015  completed: No]SEVERE: EJB5029: Exception getting ejb context : [UserBean]
    SEVERE:
    SEVERE: IOP5012: Some runtime exception ocurred in IIOP: [javax.ejb.EJBException: nested exception is: java.lang.RuntimeException: Unable to create reference org.omg.CORBA.OBJ_ADAPTER:   vmcid: SUN  minor code: 1015  completed: No]
    Any idea what could be wrong?
    Thanks for the help.
    Regards
    Satish

    Make sure PrimaryKey class for entity has the equals
    and hashcode methods implemented right.
    You've to ensure that hashCode generated is
    the same everytime for same primaryKey
    and you do the right comparison for the
    equals method.
    HTH
    -hima

  • Unable to create  followup and view transaction types for InteractionRecord

    Hi,
    We are currently working in crm 7.0 environment.
    we are not able to create followup transaction for Interaction Record -
    Transaction Type -  Business activity(0010).
    We are not even able to view the standard transaction types available
    when we select followup both in UI and GuI.
    Any inputs in this regard are rewarded and appreciated.

    Hi sreenicrm,
    Have you configured anything in the "Allowed Channels for transaction types".
    If not, it may be worth copying the standard transation type and then setting the values in the above screens.
    if you set a values of "interaction Center"(IAC) and "CRM Server"(GUI) then you shoudl see the activity.
    I am using CRM 5.0 but would imaging it is similar in 7.0.
    HTH
    Gaz

  • Problem with transacted JMS connection factory and transaction timeouts

              We encountered an interesting problem using transacted JMS connection factories.
              An EJB starts a container managed transaction and tries to validate a credit card
              before creating some information to a database for the user, in case of success
              an SMS is sent to the user via the transacted JMS queue. If the credit card authentications
              duration is about the same as the transactions timeout (in this case the default
              30 seconds) sometimes the database inserts is committed but the JMS insert is
              rollbacked. How can this be?
              If the authorization duration is much longer than 30 seconds everything works
              fine (both database and JMS inserts rollbacked), the same is true if a rollback
              is insured by calling EJBContext.setRollbackOnly(). The problem thus occurs only
              if the duration is approximately the same as the transaction timeout, it appears
              that the database insert is not timeouted but the JMS insert is. How can this
              be if they are both participating in the same transaction.
              The JMSConnectionFactory used is a Connection factory with XA-enabled. The result
              is the same also with the default "javax.jms.QueueConnectionFactory" and if we
              configure our own factory with user transactions enabled.
              Any help appreciated!
              

    Tomas Granö wrote:
              > We encountered an interesting problem using transacted JMS connection factories.
              > An EJB starts a container managed transaction and tries to validate a credit card
              > before creating some information to a database for the user, in case of success
              > an SMS is sent to the user via the transacted JMS queue. If the credit card authentications
              > duration is about the same as the transactions timeout (in this case the default
              > 30 seconds) sometimes the database inserts is committed but the JMS insert is
              > rollbacked. How can this be?
              It should not be.
              >
              > If the authorization duration is much longer than 30 seconds everything works
              > fine (both database and JMS inserts rollbacked), the same is true if a rollback
              > is insured by calling EJBContext.setRollbackOnly(). The problem thus occurs only
              > if the duration is approximately the same as the transaction timeout, it appears
              > that the database insert is not timeouted but the JMS insert is. How can this
              > be if they are both participating in the same transaction.
              >
              > The JMSConnectionFactory used is a Connection factory with XA-enabled. The result
              > is the same also with the default "javax.jms.QueueConnectionFactory" and if we
              > configure our own factory with user transactions enabled.
              >
              > Any help appreciated!
              Make sure that your session is not "transacted". In other words,
              the first parameter to createSession() must be false. There is an
              unfortunate name re-use here. If a session is "transacted", it
              maintains an independent "inner transaction" independent of the
              outer transaction. From the above description, it seems unlikely
              that your application has this wrong, as you say that
              "setRollbackOnly" works - but please check anyway.
              Make sure that you are using a true XA capable driver and database
              (XA "emulation" may not suffice)
              Beyond the above, I do not see what can be going wrong. You
              may want to try posting to the transactions and jdbc newsgroups. Note
              that JMS is appears to be exhibiting the correct behavior, but the
              JDBC operation is not. The JDBC operation appears to have
              its timeout independent of the transaction monitor's timeout.
              Tom
              

  • Unable to create New objects in SE37 & SE38

    Hi Experts,
    I am ABAPer and facing belowing mentioned problem.
    I am unable to create any custom objects like executable programs/BAPI/FM due to performance.
    I am able to open required transactions like SE37/SE38, after that If I try to create or test object, the system is not responding, again we need to go to task bar to close the session.
    I tried to debug SE38 to know what happening internally, it is closing automatically.
    I tied the below mentioned steps .
    1).  I am able to Creating/ Deleting Tables in SE11.
          Unable to create executable program.
           Open SE38 àEnter z----- object name à Click on Create à in new window  Provide Description àSelect program type u201CExecutableu201D à in new dialogue select package &  
           click to save the object. (Here is the problem , we need to restart session, unable to save object properly)
    2).  Function module and BAPI  I am trying to test in SE37.
           However I am able to open se37 transaction with in few seconds,
          After entering FM/BAPI name in SE37, if we click on Display or try to execute  that FM/BAPI system is not responding.
           Open SE37 à Enter existed object name example RFC_READ_TABLE à click on Display   (System will not respond, no content will be displayed)
    As per my knowledge, when ever interacting with SAP Database  system is going to struct,
    However a basis Consultant can understand better then me.
    Please suggest and let me know what need to be done further.
    Thanks & Regards,
    SAI

    Hi,
    I had that also, the window war frozen.
    The problem was the editor mode.
    => go to poperties.
    => change to mode to "old editor". don't use the first option (Now, I don't know the description). "Editor (new)"
    (a bug of the frontend or the backend)
    Sven

  • JMS Sessions

    Just a followup on a previous post. We have a requirement to control where exactly a CEP application commits ( acknowledges ) a JMS message.
    My question is: If I use <session-transacted> of the jms adapter config, where does the commit actually happen? Does the CEP app recover messages that are in transit coming from the jms adapter during unexpected failure?
    One reason we are foregoing this option is, the client ID is required for a Weblogic durable subscription and there is no other way to input it in the configuration.
    Our current solution is to create plain JMS subscribers using lowlevel JMS API and embed the JMS session in the message and push it down the stream as a CEP event.
    Seeking advice as to what is the most elegant solution if there are other options possible. Thank you!

    I apologize for the late response on this.
    For the first part of your question - The commit happens after the event is sent downstream from the jms adapter. So, if there is any error before a thread switch, the txn will be rolled back and it will retry the message. However, if you have a multithreaded channel downstream, the transaction will be commited after the event is put in the channel's queue.
    As for durable subscriptions - As of now we don't expose durable subscriptions through CEP configuration. This is something we will look into for a future release.
    Manju.

Maybe you are looking for