JMS c API !! Process receiving SIGTERM ?

Hi
Im using JMS C api and writing a program.
It is multi process system and IM receiving SIGTERM from nowhere.
and my processes are aborting.
I have my own handler for sigterm.
Is Jms or any related component is using SIGTERM internally for any purpose (while disconnecting I think ) ???
Plz Help me out ??
Thanks

I'm not a C expert but scanning the code for SIGTERM or signal doesn't bring up anything.
Tom

Similar Messages

  • Problem JMS-c api for message Acknowledgement

    Hi,
              I am working in a project that uses bea-JMS C api for
              Communictions.In my project i am using topic messaging for message reciving and sending..Here i am using durablesubscriber for receiving and client Acknowledgement to Acknowledge the message.
              In receiving function I store the message in another JmsMessage for Client-Acknowledgement.
              Here comes one problem that, while i Acknowledge on the receive function each and every message Acknowledge correctly.But while i Acknowledge that message from some other function it return -1 as , that it cannot Acknowledge.The other function is working in another thread.
              Wheather the seprate thread will make the problem for confirmation.

    Similar to JDBC connections, JMS sessions and their related child producers and consumers are not thread-safe (with the one exception of the session.close() method).
              For example, without added application level locking, its not safe to acknowledge a message from one thread while another thread receives or produces a message. This has special implications for asynchronous consumers, as once the asynchronous consumer is created, access to the session and objects is limited to code within the "onMessage()" and "onException()" callbacks.
              This behavior is detailed in the JMS specification.
              Tom

  • JMS C API - Retention Of Non-Acknowledged Messages

    I am sending messages via the JMS C API from a session created using CLIENT_ACKNOWLEDGE option in JmsConnectionCreateSession() call. Yet, if I receive a message and do not acknowledge it, then I shut down and bring back up my app, the message is not there.
    Shouldn't it be there on startup of app? Is there a special API call to retrieve messages that weren't acknowledeged?
    Thanks.
    Moshe

    I got it to work, i had to reorder the path directories.. which is kind of strange!
    here is how i sat up the environment to get the C API to work based on : "JmsContextCreate" return -3 (JMS_JVM_ERROR)
    CLASSPATH:
         <somepath>\lib\weblogic.jar
    NLSPATH:     
         <somepath>\lib
    PATH:
         <somepath>\lib;                              // : jmsc.lib, LIBJMSC_CAT, weblogic.jar or wlfullclient.jar
         <somepath>\bin                              // : jmsc.dll
         C:\Oracle\Middleware\weblogic92\common\lib          // : jni.dll
         C:\Oracle\Middleware\jdk160_18\jre\bin;               // : java.exe++
         C:\Oracle\Middleware\jdk160_18\jre\bin\client;          // : jvm.dll
    Directories in ENV->PATH should be ordered like this:
    1. <somepath>\lib;                              // : jmsc.lib, LIBJMSC_CAT, weblogic.jar or wlfullclient.jar
    2. <somepath>\bin;                              // : jmsc.dll
    3. C:\Oracle\Middleware\weblogic92\common\lib;                         
    4. C:\Oracle\Middleware\jdk160_18\jre\bin;
    5. C:\Oracle\Middleware\jdk160_18\jre\bin\client;

  • Each Mid-Process Receive/Invoke spawning new instance

    I have the following flow in my interface:
    Composite1 -> BPEL 1 & BPEL 2
    Composite2 -> BPEL 3
    Mock Service in OSB -> Writes the data to JMS Q (Say Q1)
    BPEL 1 -> Gets trigerred by passing input,do some validations,invoke the mock service(Internally puts data into Q1), then post the data into another JMS Q (Say Q2) and then have a mid process receive on Q3, after listening updates the response and reply to the client with the same.
    BPEL 3 -> Polls Q1 and put data into Q4 with some value in JMS Correlation ID.
    BPEL 2 -> Gets triggered as soon as we get the data in Q4,just after this receive we have another receive on Q2, Correlation happens here and then data is put into Response Queue (Q3).
    As in each BPEL we have to set Create Instance = Yes for the first receive, so I have done the same in all the 3 BPEL's.
    So I expect 2 instances of Composite1 and 1 instance of Composite 2 to come when I run the interface.
    But, I am getting 4 instances of Composite 1 and 1 Instance of Composite 2.
    Can any one please advise on this.I am facing lot of issues because of this.
    PS: The correlation is happening on each mid process receive.
    Edited by: 914654 on Feb 7, 2013 2:38 AM

    Hi,
    You have to use correlation sets in BPEL as well... JMS Correlation ID only won't be enough... Have a look at this...
    http://docs.oracle.com/cd/E17904_01/integration.1111/e10224/bp_async.htm#CIHBIEEJ
    Cheers,
    Vlad

  • MDB,MDB container or JMS adapter stops processing messages from JMS queue

    Hi guys,
    we have created a component using Enterprise Java Beans, let's say a product catalog, deployed it on a Glassfish v2 instance, and connected it to a legacy system using JMS and Sun MQ v4.1 as messaging system. The catalog component thus starts one MDB that listens on a JMS queue, let's say a queue named catalog_business_events_in, and waits for incoming messages, i.e. in our case update events. The problem is, that in general this approach works well, but sometimes the MDBs/JMS adapter stops for some reason fetching and processing messages from the JMS queue. We don't know why - no exceptions, etc.. Seems to be a Glassfish EJB container, JMS adapter or Sun MQ configuration issue. It seems to be that our component is not the problem.
    The messages are compressed/uncompressed by Sun MQ automatically. We actually have 2 Sun MQ instances in clustered mode running to have some kind of failover - no HA cluster, yet. Sun MQ instances are accessed from Glassfish instances running in different Glassfish clusters - so we have a dedicated Sun MQ cluster not a Sun MQ instance per Glassfish instance. Each Glassfish instance is configured such that it knows both Sun MQ instances to allow automatic failover.
    Has someone an idea, why the MDBs/ MDB container/ JMS adapter - stops processing messages? We are kind of puzzled as it happens more often now and apparently when traffic is (very) low not high!
    Thanks for your help.
    Cheers,
    Martin
    Edited by: east1979 on Jan 13, 2009 8:06 AM

    Hi Manoj,
    I have a very similar if not identical issue,
    Error while running realtime jobs that read from JMS tables via JMS MQ adapter:
    15/11/12 09:10:08  JMS GET OPERATION ERROR : TIMEOUT.UNABLE TO RECEIVE RESPONSE FROM THE INVOKED DATA SERVICES SERVICE.ADAPTER OPERA
    TION TO CONTINUE.
    15/11/12 09:10:15  Communication Error. See real time job log for details.
    Dump available:
    https://sapmats.wdf.sap.corp/download/download.cgi?id=5C0KZAHA3RSXBJW3ABLMUUT2P5UUKWO2TM3EJDM5W2HGDZUDID
    Version of DS:14.0.3.273
    Any comments?
    Thansk and kind Regards,
    Kenneth

  • Passing C strcutre JMS C API

    Hi,
              the JMS C API can only handle primitive type like Integer,String ...
              does anyone have any idea how to pass C structre over the JMS using the C API ?
              thanks,
              Amit

    I'm not a C expert but scanning the code for SIGTERM or signal doesn't bring up anything.
    Tom

  • Help needed - JMS C API

    I have situation where I need to talk to the legacy application (C++), which is running in a different host. How do I do that?
              Based on reading all the documents and going thru various WL8.1 tutorials, I got an idea that I need to use JMS C API to accomplish that. Correct me if I am wrong, the request needs to sent to the JMS queue (using P2P), and have it picked up by the legacy appplication and put the results back on the queue, which will be picked up by the MDB EJB to process further on the WL8.1.
              1. I am not sure about what is needed in the legacy application host (its a unix machine)?
              2. If any of you could lay-out the logistics on what is needed in the server where have the WL8.1 running, and also on the legacy application host?

    Hi,
              There are a variety of ways to talk to non-java applications. I've appended my notes on the topic.
              If you choose to use the JMS C API (which is JNI based and so requires the JVM), there is no special configuration needed on the server side - just configure JMS connection factories/servers/stores/destinations as per usual.
              If you choose to use the IIOP client (which is not JNI based and so doesn't need the JVM), you would used it to call an EJB (that you write yourself) that in turn calls into JMS. In addition you would need to set the server configuration to enable the "IIOP" protocol on the WebLogic server port the client uses.
              Tom Barnes, BEA
              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 the client. The servlets 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 are not specific to JMS, some examples are JNBridge, Jace, and CodeMesh.

  • Invoices are not getting displayed in the process receivables for a cust.

    Dear All.
    Collection Management
    I have a situation here in prod environment the worklist is displaying the customer and his outstanding balances/all the data when we select that customer and go for process receivables then i cant find any invoices/documents under the invoices tab.
    But we have the open invoices in AR for that particular customer, I am wondering how the invoices will get deleted
    Can some one help me in this issue..
    Thank you,
    D vasanth

    Hi ,
    Based on the requirement , check whether the customer contact has been done carried out for the invoice  , then possibility it must have gone out of the worklist , chekc whether the Invoice posted in the AR has been transferred to FSCM collection .

  • Is There any API in receivables payment will made against closed invoices ?

    Hi ALL,
    i have requirement as below.
    i am doing AR Invoice Data Migration for Instance 11.5.5 (as a Source Instance) to the new instance R12 (as a target instance).
    Both open and closed invoices will have to be migrated from 11.5.5 to R12 to provide the drill down facility for audit purpose.
    To meet the above requirement all the open and closed invoice will be picked up from 11.5.5 ; and imported into R12..
    Subsequently, full payment will be made in R12 against all closed invoices in 11.5.5 to close those invoices by using any APIs?
    can some one explain is there any API in receivables payment will made against closed invoices.
    Thanks,
    VSR.

    Hi,
    Can you be clear on your question: You want any API to make payment against closed invoices?
    To me, You are making things complex. We can achieve the Migration of Closed invoices using following two procedures:
    Procedure: 1
    Ask Functional Guy to create a Transaction Type 'Closed Invoices' with Open to Receivables Flag not checked. +(You can uncheck Post to GL flag also, if required depending on your migration strategy)+. Status at Transaction Type if taken as 'Closed' it will be appropriate.
    Invoices migrated using this Transaction Type shall not be shown as Outstanding but will be useful for Audit.
    Procedure: 2
    Consider the amount due Original of Closed Invoices and migrate them with the amount as Amount due remaining.
    While migrating populate Receipt Method,Payment Method and Instruments useful for Automatic Receipts.
    Once Create Automatic Receipts Program is run, it will close all these invoices. Note: We require dummy bank here which points to a Clearing account.
    Automatic Receipts program is also an API.
    In the above 2 ways, we are acheiving the Goal by using Functional knowledge rather than Technical. And I think following Functional way is better and less time consuming.
    Please discuss with your Functional consultant if required. You can succeed.
    Regards,
    Sridhar

  • Incorrect Open_Amount for credit items in process receivable screen

    In Collections Management (UDM_SUPERVISOR, UDM_SPECIALIST) EP4, in the process receivables screen, there are credit items which show open amount  (OPEN_AMOUNT field) as '0' even when there is an actual non zero open credit amount for that credit item.  This can be checked either by the 'show history button on the process receivables screen for the credit item or via FBL5N transaction.
    If a credit memo with an open credit amount and an invoice (lesser $ value than the credit) are matched  (using F-32) such that the balance amount is assigned as a residual item on the credit memo, the open amount value becomes '0' where as it should show the actual residual dollar amount of credit.
    Please note we have enabled Customer - Disputed Objects which allow the credit items to show as separate line items
    Has any one encountered such a situation ? I am not able to understand why would it do that.

    Hello Quennie,
    Your question is little confusing, as I suppose, by 'Overdue Amount of customer' you might mean "Outstanding Amount of customer".
    Actually, the credit limit of a customer is defined in the Transaction FD32 and the field is KNKK-KLIMK and the "Total receivables (for credit limit check)" (in other words, Outstanding amount of customer) is KNKK-SKFOR.
    I hope this helps you to prepare a report. Please let me know if my understanding is not correct.
    Thanks and regards,
    Suresh Jayanthi.

  • How can I delete the TemporaryTopic using JMS C API or VC++

    Hello everybody,
    how can I delete the TemporaryTopic after created TemporaryTopic using JMS C API "JmsSessionCreateTemporaryTopic"?
    I checked the document about JMS C API, but I couldn't find any API for delete TemporaryTopic, it's really not existing?
    Or if there's any other way that I can delete TemporaryTopic using VC++? Any comments will be appreciated.
    Thanks for your help!
    Youbing he

    As far as I can tell, there's no C-API option for deleting a temporary topic other than to close the connection used to create the temporary topic. Note that it is inefficient to frequently create and destroy temporary topics.
    You can get pretty much equivalent performance and functionality with a shared regular topic, non-durable subscriptions, and selectors that take advantage of the "indexed subscriber" optimization. (Consumers specify a selector that is unique to them in the exact form of "MyUniqueID NOT NULL", while publishers send to a specific consumer by adding "MyUniqueID" as a message property. The "X NOT NULL" selector format activates the indexed subscriber optimization.)
    Tom
    Edited by: TomB on Apr 27, 2010 10:44 AM

  • Mid-process Receive (onEvent) is not picking up published event

    We have a composite (CompositeA), which has 2 BPEL processes (bpelprocess1 and bpelprocess2). bpelprocess1 is synchronous and bpelprocess2 is a one-way. bpelprocess1 receives a message from the client - then sends the message using a one-way Invoke action to bpelprocess2 - bpelprocess2 transforms the message and assigns some values - then sends the message to Event1 through an Invoke action - bpelprocess1 has a Receive activity waiting for an event from Event1 - then it will send the message back to the client as the Reply. Everything works up to the point where the bpelprocess1 Receive(onEvent) activity is waiting for an event, it sits in this "Pending" state until the SyncMaxWaitTime value has expired and then we get a timeout error (see below).
    "Waiting for response has timed out. The conversation id is null. Please check the process instance for detail."
    So our question is, why does the Receive(onEvent) in bpelprocess1 never pick up the published event? We've run some additional tests to ensure the event is being published, and that has been confirmed.
    Is it possible to receive an event that was published during the current instance of the process (i.e., since bpelprocess1 invoked bpelprocess2 which invoked the Event1 publish, can bpelprocess1 perform a mid-process Receive of the event that was just published?
    Please let us know if this makes sense or if you have any additional questions.
    On a side note, if we create an independent mediator component in the same composite and have it subscribe to Event1 as well, then just write the message out to a file. It would not pick up the message from the EDN in the scenario described above, if we set the property nonBlockingInvoke=true or bpel.config.transaction=requiresNew on the bpelprocess2 partnerlink from bpelprocess1, the Mediator would get the message from the EDN, but bpelprocess1 still timed out waiting for the event. If we setup another BPEL process (bpelprocess3) in the same composite (though not linked to bpelprocess1 and bpelprocess2) and it has a mid-process receive onEvent listening for Event1, it does not pick up the published event either, so seems to be an issue with the mid-process receive onEvent in the synchronous BPEL process.
    Any help is appreciated.

    Thanks for the reply, but there is no issue with the one-way from bpel1 to bpel2, we do not expect nor want a response from bpel2, it should just publish the event and complete. The bpel1 should continue it's flow (which it does) and the next action is a Receive action listening for an event (that was published by bpel2), but the Receive never finds the event.
    Here's a less complex use case:
    1. bpelprocess1 is a synchronous process which publishes to Event1 (this completes successful and returns a success message to the client)
    2. bpelprocess2 is an asynchronous process which has a mid-process Receive action that is listening for Event1
    3. bpelprocess3 is a process which is initiated by Event 1
    If we execute bpelprocess2 it will set at the mid-process Receive action in a PENDING state, waiting for Event1 to occur.
    If we then execute bpelprocess1 the Event1 is published and we receive a "SUCCESS" response back.
    At this point bpelprocess3 is initiated (b/c it's initial Receive is triggered by Event1)
    We would also expect the mid-process Receive in bpelprocess2, which is in a PENDING state to trigger, but it never does.
    Hopefully this use case makes more sense.

  • I have been able to open PDF docs using C# API Process.Start("Full_path_To_the_PDF_File") in windows 7 or windows 8 with all previous versions of Acrobat32 reader.

    I have been able to open PDF docs using C# API Process.Start("Full_path_To_the_PDF_File") in windows 7 or windows 8 with all previous versions of Acrobat32 reader.
    However, with v11.0, the same command, in Windows 8, it does not open the PDF document. I can see the Acrobat(32) started in the task manager, but the document does open. Not sure how I can troble shoot this problem. Any help would be appreciated.

    I haven't use the C# API but I imagine it is the same as C ShellExecute. Which in turn is the same thing (in essence) as double clicking in Windows Explorer.
    So... does Adobe Reader run normally on this machine?
    And does it start and open if you double click on a PDF file?

  • BPM processes,receiving signals (events) & correlation to existing instance

    Hi,
    BPM 11g/SOA Suite 11g (R1 PS2)
    I am wondering whether it is possible to receive signals (EDN events) into a running process instance. The documentation describes how a process can be started by an event. I would like to be able to feed an event (signal) into a running process (just like we do with correlation in BPEL processes). Is that possible - and if so, how?
    Along the same lines, can BPM processes receive messages through externally exposed WebService operations - into correlated process instances? For example: I have started the process to create a new employee in the organization and I want to inform the process instances taking care of this employee that she will start on a later date than originally assumed (or not at all because she has accepted another job). I know the unique employee id for this new hire. How can I configure the BPM process such that this incoming call after the instance has started is fed into a Receive activity in the process instance working on this employee?
    Maybe a similar is question would be: can a message catch event be used without a corresponding message throw event - to catch incoming messages asynchronously and not related to a message sent by the process instance.
    thanks very much for your insights,
    Lucas

    I also tried DB Adapters and it is not working for my scenario. Needed help/pointers from a BPM Guru \.
    As per my business scenario, If there any update in the database (offline approval. not using worklist) then i should complete the running BPM process for approval.
    1. To achieve this, I created a adapter to poll and it is working in polling. What is not working is picking the update in process and mark is closed/complete.
    2. I tried using Catch Event with continuation mode (but it needs throw event to begin with).
    3. I also tried ‘Receive event’, which also needs start event for continuation.
    4. If i use Initiate mode for catch event then it initiate a new process and mark it close and does not do anything with original process (having this catch event). This catch event is still waiting.
    5. If i use “receive” event with Initiate mode then jdeveloper is giving compilation time error saying that some service is not referenced in composite.
    6. I have also tried other options of using “Sub-process” or another process and invoking it but nothing seems to work.
    Any help/pointers? Thanks a lot.

  • Jms c api for weblogic

    How to access jms queue of weblogic server from c/c++ application.Can any one provide example for this.I have tried to download jmscapi from
    http://dev2dev.bea.com/resourcelibrary/utilitiestools/environment.jsp#jmscapi
    but the page is not available.
    Details:-
    WLS: Weblogic server 10.x
    Linux / Windows XP OS
    VC++ 2008
    ++JMS server on WebLogic server 10.x
    OSB 10g R3
    Please provide where it can be downloaded or if any one can share it.Any help regarding this would be appreciated.

    For 8.1, the unofficial dev2dev JMS C-API download is all that I know of. There's also now an official version now packaged with 9.0. Since the official 9.0 version is very close to the unofficial version, I imagine it would work - and would be a bit more up-to-date. But while I'm fairly sure that BEA "officially" supports using the official 9.0 version with a 9.0 client to communicate with 8.1, I don't know if BEA would support using the 9.0 version with an 8.1 client.
              I recommend contacting BEA through channels to get the full story (either through sales or support).
              Tom

Maybe you are looking for

  • Flex sdk 4.6 maven repo

    Hi there wasa blog post last October (http://justinjmoses.wordpress.com/2011/10/) saying that Adobe was getting invovled in getting the flex 4.6 sdk into a maven repository. There is still no mention of this either here or in the flexmojos google gro

  • ADF deploy on Solaris

    Hi All, Has anybody deployed their ADF application on solaris successfully. I am unable to do so since last two weeks. My Jdev version 10.1.3.0.4.3673 (running local windows) My Oracle app server 10.1.2.0.2 (running remote solaris) 1>Used Jdev adf in

  • Content Preview in Form Builder

    Hi all, I have duplicated the standard SAP XML form SAP_Announcements from the Form Builder. The standard xml form displays only the title and creator of the item in the RenderListItem tab. I am trying to modify it such that it displays the first 3 l

  • Fonts from previous Indesign

    I recently had my hard drive crash.  I though I had all my fonts backed up, but I didn't.  I've used Univers Lt on several of my documents, and of course this font came from a previous version of ID, but I'm not sure if I can get them off the CD.  Is

  • ECC 6.0 UPGRADE -  IMPACT ON BW 3.10 SIDE

    Hi Gurus, Our Client is planning to upgrade from 4.6C to ECC6.0 and currently No plan for BW (we are on 3.10) upgrade. I have gone through previous postings & refered few sap notes on the same topic. Can anyone collectively provide information on upg