Need Help:Handling CLOB in OSB Proxy Service
Hello All-
We have created an AQ in Oracle DB which will have the following message Structure:
CREATE OR REPLACE TYPE enqueue_payload AS OBJECT
( field1 VARCHAR2(100),
field2 VARCHAR2(100),
field3 DATE,
field4 VARCHAR2(100),
field5 NUMBER,
payload CLOB,
In the Payload field we are enqueing an XML message.
We have to use a OSB proxy service to dequeue the message from the AQ, transform it to another format and send to a SOA Composite.
We created a AQ Adapter in Jdeveloper 11g and imported the WSDL, XSD and .jca jca binding file into the OSB project. And configured the OSB proxy service using the WSDL imported.
However in OSB proxy service message flow when I try to create an XQUERY transformation, I see that the Payload field does not expose the structure of the XML message that is being enqueued. I even changed the message structure definition to have the payload field as XMLType. But it didn't help.
On analyzing the XSD created by AQ Adapter, I see that the payload is being defined as "string" in the XSD.
Inputs Needed
=========
1. How can we parse the payload field defined as CLOB/XMLType in OSB so that I can see the structure of the XML message it holds ?
2. Is there any in-built function in OSB to convert it to XML ?
3. Any other inputs in order to transform the XML message coming in the payload field as CLOB/XMLType
Please provide your inputs and I hope that I have clearly explained my use case.
Thanks in advance for your time and help!!
Regards,
Dibya
Hi Atheek-
Please find the logs below:
Payload:: Indicates the actual payload with all the headers fields coming from AQ
Payload After Applying the Function:: Indicates the data that is logged after applying the fn-bea:inlinedXML function.
The function fn-bea:inlinedXML is extracting the data from the XML tags :(
####<Dec 20, 2010 12:14:26 PM GMT+05:30> <Info> <ALSB Logging> <vhydaiavm-03> <osb_server1> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-000A464703C2C06A4338> <6751713a0ce9f61d:-6e70b631:12d02855fef:-7ff4-0000000000000002> <1292827466595> <BEA-000000> < [PipelinePairNode1, PipelinePairNode1_request, stage1, REQUEST] Payload:: <apps:ORA_FUSION_LOAD_XMLTYPE xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:apps="http://xmlns.oracle.com/xdb/APPS">
*<RICE_ID>PRJ_INT_30</RICE_ID>*
*<SOURCE_SYSTEM>ORACLE</SOURCE_SYSTEM>*
*<DATETIME>2010-12-20T10:49:17.000Z</DATETIME>*
*<TRANSACTION_ID>PRJ_INT_30-1</TRANSACTION_ID>*
*<RECORD_COUNT>1</RECORD_COUNT>*
*<PAYLOAD><![CDATA[<ALTPPSEGHIERARCHY><sgmt_name>Company</sgmt_name><include_parent_child>C</include_parent_child><parent_flex_value>P</parent_flex_value><child_flex_value_low>03</child_flex_value_low><child_flex_value_high>03</child_flex_value_high><start_date_active></start_date_active><end_date_active></end_date_active></ALTPPSEGHIERARCHY>]]></PAYLOAD>*
*<ATTRIBUTE1 NULL="TRUE"/>*
*<ATTRIBUTE2 NULL="TRUE"/>*
*<ATTRIBUTE3 NULL="TRUE"/>*
*<ATTRIBUTE4 NULL="TRUE"/>*
*<ATTRIBUTE5 NULL="TRUE"/>*
*</apps:ORA_FUSION_LOAD_XMLTYPE>>*
####<Dec 20, 2010 12:14:26 PM GMT+05:30> <Info> <ALSB Logging> <vhydaiavm-03> <osb_server1> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-000A464703C2C06A4338> <6751713a0ce9f61d:-6e70b631:12d02855fef:-7ff4-0000000000000002> <1292827466595> <BEA-000000> < [PipelinePairNode1, PipelinePairNode1_request, stage1, REQUEST] Payload After Applying the Function:: PRJ_INT_30ORACLE2010-12-20T10:49:17.000ZPRJ_INT_30-11>
####<Dec 20, 2010 12:14:26 PM GMT+05:30> <Info> <JDBC> <vhydaiavm-03> <osb_server1> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <6751713a0ce9f61d:-6e70b631:12d02855fef:-7ff4-0000000000000002> <1292827466688> <BEA-001128> <Connection for pool "EBS_DHAARA_DataSource" closed.>
Similar Messages
-
Adding Jax-RPC Handlers to OSB Proxy Service
Hi All,
I am new to OSB and wanted to know if I can add a Client side (My proxy Service -> external business service) Handler chain to OSB Proxy Services. I know how to add handlers to general webservice. But is there any way to intercept the request by adding handlers to OSB proxy service before it goes to business service?
Any help is highly appreciated.
Thanks,
SwethaHi Eric,
Thanks for your response. we are trying to access WSRR( manages end point urls for 7 different environments) and generate the end point dynamically at the design time. As we figured out WSRR is not compatible with OSB we are trying to implement these client side (OSB Proxy service) handlers which would get the dynamic endpoint depending on the environment used. I was able to create the handlers for this and set the jar in the classpath but the client service which should be using these handlers have to have these handlers defined in the deployment descriptor(web.xml) which am unable to see with a OSB project.
Will there be a deployment descriptor(web.xml/webservices.xml) associated with Proxy services on OSB? Or Is there any other way to add custom JAX-RPC Handlers to a proxy service? Or is there any way to connect to WSRR directly?
Thanks,
Swetha -
Report and Alert don't executed in the error handler with a JMS proxy service
Hi,
I'm working with OSB 11.1.1.4.0 and I'm facing a problem with the error handler of my JMS proxy service.
My error handler contains two main elements :
- a Report action
- an Alert with a JMS destination defined
When the business service failed the message remain in the queue. It's the expected behavior.
The problem is :
- the report is missing
- the alert is raised but missing in the JMS destination defined in the Alert setting.
I've noticed if I add a Reply with Failure or Success, Report and Alert are successfully executed.
Unfortunately the message don't remain in the JMS queue.
What can I do in order to have my report/alert done and the JMS transaction rollback in order to keep the message in the queue ?
I've already met this problem in the past with alsb v3 and my solution was to add Service Callout in the error handler in order to externalize these actions.
This solution is not convenient and I hope another solution is possible.Inventorying workgroups can be difficult, especially when it comes to remote access and network security. Because workgroups are not centrally managed, some of the items discussed in this
wiki article on preparing your workgroup environment may require you to visit each machine individually.
For non-domain credentials, you do not use the <systemname>\<user> format, you simply enter the user name. Regarding how to enter the credentials, if you have an account that uses the same username and password on all machines and is an administrator
on all of those machines, then you can enter that in the All computers credentials page of the wizard. You can also do this if they are different user names. However, if some machines have an account with the same user name, such as Administrator,
but different passwords on each machine, you will need to use the Manually enter computer names discovery method, and then enter the information for each group or each machine.
As you can tell, workgroup environments can quickly negate any benefit that the agentless inventory nature of MAP provides.
Please remember to click "Mark as Answer" on the post that helps you, and to click
"Unmark as Answer" if a marked post does not actually answer your question. Please
VOTE as HELPFUL if the post helps you. This can be beneficial to other community members reading the thread. -
Extracting MIME attachment from email using OSB proxy service - email transport
Hi,
I'm reading email messages(multipart/mixed) with attachments(pdf, zip, xml and csv) from MS Exchange Server 2010 using OSB proxy service email transport.I need to save the attachments to a local folder and process one of the attachments, an XML file. Below is the proxy service config.
Proxy Service Configuration (Test1/Proxy Services/GetEmail)
Actions:
General Configuration
Service Type Messaging Service
Message Type Configuration
Request Message Type
Text
Response Message Type
None
Transport Configuration
Protocol email
Endpoint URI mailfrom:mailserver.net:143
Get All Headers No
Headers
EMAIL Transport Configuration
Email Protocol imap
Service Account Test1/Proxy Services/email_acc
Managed Server WLS_OSB1
Polling Interval 30
Read Limit 2
Pass By Reference false
Pass Attachments By Reference false
Post Read Action move
IMAP Move Folder processed
Attachments archive
Download Directory \\soasup-stor01\Vacancy\test\download
Archive Directory \\soasup-stor01\Vacancy\test\archive
Error Directory \\soasup-stor01\Vacancy\test\error
Request Encoding iso-8859-1
Message Handling Configuration
Transaction Required Disabled
Same Transaction For Response Disabled
Content Streaming Disabled
The polling is working fine. I've encoded the attachment variable to Base64 using a java callout.$attachments/ctx:attachment/ctx:body/ctx:binary-content has been passed as the byte[] input to the java method and the response is captured in $encodedAttachment. I've created a SaveFile BS(file type) with Request Message Type = Binary and Response Message Type = None. I've tried replacing the node ./ctx:binary-content in body variable with encodedAttachment in the request action of the Publish action to call the BS. One file is getting created with contents of the entire email, MIME headers and boundary parts along with the base64 encoded attachments.
<Contents from the created file>
MIME-Version: 1.0
Content-Type: multipart/related; boundary=MIME_Boundary;
type="binary/octet-stream"
--MIME_Boundary
Content-Type: binary/octet-stream
Content-Transfer-Encoding: 8bit
Thanks & Regards,
Samyajit Talukdar
: [email protected]
-----Original Message-----
From: Samyajit Talukdar
Sent: 10 April 2015 14:11
To: MS MLRP Returns
Subject: FW: 22222
Thanks & Regards,
Samyajit Talukdar
: [email protected]
--MIME_Boundary
Content-Type: application/vnd.ms-excel; name="soainfra_v$session.xls"
Content-Transfer-Encoding: base64
Content-Description: soainfra_v$session.xls
Content-Disposition: attachment; filename="soainfra_v$session.xls";
size=25618; creation-date="Thu, 27 Nov 2014 09:56:35 GMT";
modification-date="Fri, 10 Apr 2015 09:28:23 GMT"
0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAA
EAAAJgAAAAEAAAD+////AAAAAAAAAAD/////////////////////////////////////////////
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAA=
--MIME_Boundary--
If I put a delete action in the request to Publish action for SaveFile BS to delete the $attachments, the created file contains only the email body part and the attachment boundary part is missing.
I've uploaded the OSB log with full trace enabled.
How can I pass the encodedAttachment to the BS for saving the files?
Would iterating through the $aatachment/ctx:attachment give me the individual attachments for saving and processing, as there are separate binary-content refs in them?
Any help to achieve my requirement is highly appreciated.
Thanks in advance.Hi Manoj,
Thanks for the quick reply to my query.
The thing is, the link you have provided talks more from changing the business Service configurations i.e. the type of the service etc, but the concern is, that the Business Service is already Implemented and hence the change would not be an appropriate option for me.
Please let me know, if any more information is required.
Thanks & Regards,
Anu -
OSB Proxy service HTTP kerberos authentication
Is it possible to use kerberos authentification in OSB Proxy service?
I need it in following scenarios.
First scenario. We have Sharepoint Portal with Windows SSO. Our Sharepoint developers can invoke webservice on OSB (proxy service) with transfering of kerberos ticket (they talk about process named impersonation). In OSB proxy service I want to know credentials which are passed in kerberos ticket. How to do it? My Weblogic and OSB Consoles already have kerberos auth.
Second scenario. How can I pass kerberos ticket from proxy service to business service without knowing info in this ticket. Like passthrought for basic auth.
PS I had read info here: http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/security_faq.html and paragraph about OSB SSO looks bad for this task...For weblogic console i had done several actions for enabling of kerberos auth... some of them are:
- NegotiateIdentityAsserter was added to realm's providers,
- web.xml of consle was configured in section ...<login-config><auth-method>CLIENT-CERT, FORM</auth-method>...
etc...
What actions i need to do for proxy service?
PS Manoj sorry... wait... i missed your link before have not read info yet :) may be it will help...
Edited by: Andrey L. on 17.03.2010 2:25 -
OSB Proxy service request is echoed
Hi All
When I test my OSB proxy service, the request is being echoed back and the invocation trace just shows "No Service has been invoked, the request is echoed". I have created a Business service for my BPEL process and this is working fine. Only problem is when invoked from the proxy. The call is not even going to the BS. And there is no authentication or security policy attached to any of my services. Can someone please help?
Also, when I put the endpoint of the proxy service into my browser, it shows a Forbidden-403 error
The log file shows access denied exceptions. The trace from the log file is
Failed to process request message for service ProxyService OracleEbizProductServices/ProxyServices/GetOracleProductInventory: com.bea.wli.sb.security.AccessNotAllowedException com.bea.wli.sb.security.AccessNotAllowedException at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:136) at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:117) at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:586) at
Any suggestions on what's going on?
Thanks in advance
RajaHi
We saw a similar issue in our environment. Suddenly all the proxy services were denying access. This happened after an IP address change on the servers running WLS Admin and OSB.
By clearing all the temp/cache files on both servers, and ensuring that the WLS Authentication Setting did not 'cache' results we were able to resolve the problem. Obviously we needed to restart the WLSAdmin and OSB managed servers as well.
Hope this helps.
Thanks -
OSB: Issue while testing OSB proxy service using SOAPUI
Hi,
I am trying to test an OSB proxy service using SOAPUI.
The below are the steps i have followed in SOAPUI:
1. File->New SOAPUI project
2. Opens the dialog to create REST service
3. Given service endpoint as: http://<osb servername>:<port>
4. Opens dialog to create a REST resource
5. Resource Path/EndPoint is the OSB proxy service end point.
6. HTTP method = POST
The proxy service accepts 'text' input so i have given Media Type as 'text/plain'
But, when i give the request message and run the request. The request is not running. I am not seeing the processing symbol at the bottom right of the SOAP UI request. Whereas i am able to run other services.
Kindly help me resolve this issue.
Thanks,
Kalpana.your problem:
Missing class: oracle.tip.adapter.jms.JmsManagedConnectionFactory
Dependent class: oracle.tip.adapter.fw.wsdl.WSDLUtils
Loader: oracle.bpel.common:10.1.3
Code-Source: /oraclesoa/oraclesoa/product/10.1.3.1/OracleAS_1/bpel/lib/orabpel.jar
Configuration: <code-source> in /oraclesoa/oraclesoa/product/10.1.3.1/OracleAS_1/j2ee/home/config/server.xml
It happens when server is custom installed, try to reinstall it as full version and problem should disappear otherwise your need another full installation to retrieve and replace orabpel.jar file from (or maybe more) -
XSLT transformation in OSB Proxy Service
Hello, I am trying to modify the answer from a WebService using an XSLT transformation in an OSB Proxy Service, but I am unable to do so. Here it is the content of the answer's body it receives:
<ns0:getRecountUnitMovementsResponse xmlns:ns0="http://www.grifols.com/gds/interfaces/types/">
<ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
<ns4:GrpId>4</ns4:GrpId>
<ns4:MovementType>960</ns4:MovementType>
<ns4:DcCode>165</ns4:DcCode>
<ns4:RecDcCode>165</ns4:RecDcCode>
<ns4:UnitItemNumber>11-0001</ns4:UnitItemNumber>
<ns4:RecUnitItemNumber xsi:nil="true"/>
<ns4:Bol xsi:nil="true"/>
<ns4:CustomerId xsi:nil="true"/>
<ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
<ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
<ns4:MovStatusCode>SE</ns4:MovStatusCode>
<ns4:Quantity>10</ns4:Quantity>
</ns1:result>
<ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
<ns4:GrpId>1</ns4:GrpId>
<ns4:MovementType>913</ns4:MovementType>
<ns4:DcCode>165</ns4:DcCode>
<ns4:RecDcCode>165</ns4:RecDcCode>
<ns4:UnitItemNumber>11-0001</ns4:UnitItemNumber>
<ns4:RecUnitItemNumber xsi:nil="true"/>
<ns4:Bol xsi:nil="true"/>
<ns4:CustomerId xsi:nil="true"/>
<ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
<ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
<ns4:MovStatusCode>SE</ns4:MovStatusCode>
<ns4:Quantity>15</ns4:Quantity>
</ns1:result>
<ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
<ns4:GrpId>2</ns4:GrpId>
<ns4:MovementType>913</ns4:MovementType>
<ns4:DcCode>165</ns4:DcCode>
<ns4:RecDcCode>165</ns4:RecDcCode>
<ns4:UnitItemNumber>21-00001</ns4:UnitItemNumber>
<ns4:RecUnitItemNumber xsi:nil="true"/>
<ns4:Bol xsi:nil="true"/>
<ns4:CustomerId xsi:nil="true"/>
<ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
<ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
<ns4:MovStatusCode>SE</ns4:MovStatusCode>
<ns4:Quantity>25</ns4:Quantity>
</ns1:result>
<ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
<ns4:GrpId>3</ns4:GrpId>
<ns4:MovementType>959</ns4:MovementType>
<ns4:DcCode>165</ns4:DcCode>
<ns4:RecDcCode>165</ns4:RecDcCode>
<ns4:UnitItemNumber>11-0001</ns4:UnitItemNumber>
<ns4:RecUnitItemNumber xsi:nil="true"/>
<ns4:Bol xsi:nil="true"/>
<ns4:CustomerId xsi:nil="true"/>
<ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
<ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
<ns4:MovStatusCode>SE</ns4:MovStatusCode>
<ns4:Quantity>50</ns4:Quantity>
</ns1:result>
</ns0:getRecountUnitMovementsResponse>
And what I am trying to do is replace all the "/com/grifols/gds/webapp/inventoryCount/units/queries/common/" for "http://www.something.else". I have succeeded replacing it if the attribute name is "xmlns" instead of "xmlns:ns4". However, that ":ns4" changes everything and I can't get it to work. Does anyone know how to do so?
Thank you in advance. Don't hesitate to ask me for more information you may need.
JordiBy the way, this is the XSLT transformation that works fine if we remove that ":ns4" from the attribute name:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:source="/com/grifols/gds/webapp/inventoryCount/units/queries/common/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
version="2.0">
<xsl:output method="xml" encoding="iso-8859-1" indent="yes"/>
<xsl:template match="source:*">
<xsl:element name="{local-name()}" namespace="http://www.something.else">
<xsl:apply-templates select="@*|node()"/>
</xsl:element>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet> -
OSB Proxy service replying null.
Hi,
I am trying to invoke a OSB proxy service from a third party tool(SOAPUI). I am getting null as response. But I can see the response in OSB test page.Please help.
Request Document
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
</soap:Header>
<soapenv:Body>
<sch:issueMaterialService xmlns:sch="http://www.morrisonsplc.co.uk/meatpoc/schema">
<sch:UserName>string</sch:UserName>
<sch:ResponsibilityName>string</sch:ResponsibilityName>
<sch:BatchNumber>string</sch:BatchNumber>
<sch:ItemNumber>string</sch:ItemNumber>
<sch:Quantity>1.051732</sch:Quantity>
<sch:UOMCode>string</sch:UOMCode>
<sch:LotNumber>string</sch:LotNumber>
</sch:issueMaterialService>
</soapenv:Body>
</soapenv:Envelope>
Response Document
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header/>
<soapenv:Body>
<sch:issueMaterialServiceResponse xmlns:sch="http://www.morrisonsplc.co.uk/meatpoc/schema">
<sch:TransactionId/>
<sch:SecondaryWIPIssueQty/>
<sch:SecondaryWIPIssueUOM/>
<sch:Messagecount>1.0</sch:Messagecount>
<sch:MessageList>Error while setting the context</sch:MessageList>
<sch:LotNumber>string</sch:LotNumber>
<sch:Status>E</sch:Status>
</sch:issueMaterialServiceResponse>
</soapenv:Body>
</soapenv:Envelope>It's strange!!! If you are getting response on test console then definitely SOAPUI will also get the response. Are you sure that it is OSB which is not sending response and it is not a problem with SOAPUI?
Let us know your proxy configuration detail.
Regards,
Anuj -
Hi,
I have a simple Proxy Service which consumes messages from a remote endpoint queue (source queue). The Proxy Service simply routes consumed messages to a Business Service which puts messages into another remote endpoint queue (destination queue).
When I test passing a message to the Proxy Service using the OSB's Test Console, the Proxy Service routes the message to the Business Service okay where the message is then placed into the remote endpoint queue (destination queue) as expected. But, if I put a message into the remote source queue, I can see that the message gets consumed by the Proxy Service but the message remains as 'pending' and, either the Proxy Service does not route the message to the Business Service or, the Business Service does not put the message into the remote destination queue. What could the problem be?
Thanks in advance for any help on this.Hello,
Still looking for an answer to this.
Scenario:
When enabled, OSB Proxy Service removes any messages placed in remote endpoint URI queue, but it seems the messages do not flow within the Proxy Service's message flow itself. When the Proxy Service is enabled, the messages in the remote queue get removed but are seen to stay in a 'pending' state. When the Proxy Service is disabled, the messages get put back in the queue. What are the possible reasons as to why messages would not get processed within the Proxy Service's message flow? All the message flow does is, route the messages to a Business service which then sends the messages to another remote endpoint URI queue.
PS: When a message is injected into the Proxy Service via the Test Console, the message flows/routes to Business Service okay without problems so I assume that the problem must lie in the inital remote queue/Proxy Service interface somewhere. Maybe permissions or transaction related issue? But I can't see any hints to anything wrong in configurations or server(s) logs...
Thanks in advance for any help on this. -
Consume JMS Unit-Of-Work message through OSB proxy service
Hi,
Anyone know how to consume a JMS Unit-Of-Work (UOW) message using an OSB Proxy Service of JMS type?
I can submit a unit-of-work JMS message (which consists of multiple constituent messages) using an OSB proxy & business service combination and setting the UOW transport headers appropriately. I can also separately produce and consume Java objects via a JMS queue where the consumption is done via OSB proxy (of java request message type), but these aren't UOW messages.
Apparently as soon as it is a UOW message then the message consumed is an ObjectMessage ArrayList and one has to use the "Java" request message type for the JMS consumer proxy, but I'm unsure of how to create the concurrent client jar to use it in the same proxy service's JMS transport configuration in order to output the ObjectMessage ArrayList (UOW message).
Ideally I'd like to consume a single UOW XML message via an OSB JMS proxy service.
Any pointers would be appreciated.
RFinally got this working!!
For posterity: Needed to insert Java Object JMS messages on the OSB JMS producer (Business Service) side with correct UOW jms transport header set in route node. Then consume the Unit-Of-Work message on the other side via jms proxy service with "java" request message type, with appropriate jar containing the Object class as the "Client jar" in the JMS Transport configuration. In the same JMS consumer proxy I had to do a java callout, passing the contents of $body, using java.util.ArrayList and javax.jms.ObjectMessage, as input into a method (.. decodeJavaMessage(ArrayList<ObjectMessage> ...)). In this java callout class you can get to each individual ObjectMessage via typecasting the get() method on the Arraylist to (ObjectMessage) and then just typecast the getObject() on this Objectmessage into your original Java Class (same as what you inserted onto queue originally).
Hope this saves someone some time in future! -
OSB proxy service Calling OSB proxy service from BPEL
Dear team,
Wehave a requirement to call a Wsdl based OSB proxy service with sb protocol from SOA Composite from BPEL process.
We created a wsdl based OSB proxyservice with sb protocol and deployed to OSB development server.
We tried to export the wsdl and corresponding xsd files. sbconfig.jar got created.
When we extracted the sbconfig file and placed the wsdl and xsd into the SOA composite.
When we are trying to create a partnerlink, that OSB proxy service wsdl is not showing up.
Please suggest.
How to call OSB proxy service from BPEL..Hi,
Here either you need to change the protocol from 'sb' to http or use the Direct Binding in soa-composite.
please refer this links:
Can a business service call a proxy service in OSB
http://biemond.blogspot.in/2009/03/calling-osb-services-from-bpel.html
BPEL to OSB using sb transport protocol
Thanks, -
I am creating a dynamic route in an OSB proxy service. Is there a way to lookup a proxy service using its "Endpoint URI" ?
Thank you for any help!
JeffThank you both for helpful and correct answers. In the end I addressed the issue by exporting a customization script and running the below xquery on it to generate a route mapping file. My client still passes in the endpoint URI as planned, and the proxy uses that to lookup the physical service name when routing. Not ideal, because I will have to needlessly maintain this file, but it is workable and gets my app moving. At least I can now do my security through a single entry point, which will be much less work than securing each of my many services.
declare namespace tns="ld:ProcessOSBMappings/processOSBCustomizations";
declare namespace cus="http://www.bea.com/wli/config/customizations";
declare namespace xt="http://www.bea.com/wli/config/xmltypes";
let $data := doc('ALSBCustomizationFile.xml')
return
<Mappings>
for $tmp in $data//cus:envValueAssignments[xt:envValueType eq 'Service URI' and xt:owner/xt:type eq 'ProxyService']
return
<Proxy>
<PhysicalPath>{$tmp/xt:owner/xt:path/text()}</PhysicalPath>
<EndpointURI>{$tmp/xt:value/text()}</EndpointURI>
</Proxy>
</Mappings> -
How can we call a OSB proxy service from a BPEL process?
Hi,
I want to call a OSB proxy service from a BPEL process. Can you please explain me the procedure?Get the wsdl of the OSB proxy service and create webservice parnerlink in BPEL based on this wsdl to invoke the service
To form the wsdl url, copy the Endpoint URI configured to the proxy service(just click on the proxy service in the console) from the sbconsole - /ATHGPUM_GlidePathService/ProxyService/ATHGPUM_GlidePathProxyService
Pre append <<protocol://OSB Hostname:OSB Port>> - http://localhost:8000/ and post append with ?WSDL
The final WSDL url look like - http://localhost:8000/ATHGPUM_GlidePathService/ProxyService/ATHGPUM_GlidePathProxyService?WSDL
Regards
Albin I -
OSB proxy service and BPEL depedency is not established in BTM
Hi All,
I am using BTM 12.1.0.3 and I have deployed a service where an OSB proxy service is taking employee information and callling a BPEL process which writes data in some database table. The OSB proxy service and BPEL got discovered in BTM but the dependecy between OSB Proxy service and BPEL process is not established in BTM. I have used soa-dorect protocol to call the BPEL from OSB. I have also tried with using http protocol in OSB for calling a BPEL but nothing worked and the depedency is not established in BTM.
Now I want to create an end-toend transaction i.e. starting from OSB proxy to the database. For this I selected OSB proxy operation and BPEL operation but correlation is not established. How can I correlate these operation? And how can I create an end-to-end transaction for this type of service where OSB calls a BPEL?
Please guide!!
Thanks in advance!!you can manually correlate any number of services to create an end-2-end transaction. Please see http://docs.oracle.com/cd/E24628_01/doc.121/e37014/transactions004.htm#BABDBDFI on how to manually correlate services in BTM.
Maybe you are looking for
-
How to pass data accpeted in the form of a Table to the Servlet.
Hi guys. here is the problem: A page is displayed and it contains a table with about 20 rows and 2 columns. Each cell of the Table contains a TextField. The user has to enter data into these TextFields. How to i pass this 20 X 2 data to a servlet. Ad
-
GE620DX Scaling apps on Screen
Hi Guys, Picked up the GE620DX to replace my old dying Dell XPS laptop, and must say i am really impressed with it. The main reason for buying this model was 1. the spec and 2. the resolution as i demo some custom fixed res apps (1280x1024) . This
-
Photo's sharpened in LR4 look great but terrible when exported.
What am I doing wrong? I start with a great photo, it doesn't need much sharpening, just a bit to make it pop. It looks great in LR (photo is RAW) but then when I export it as a full sized Jpeg and put it into Blurb (because I'm making a photo album)
-
Oracle HR Rel 11 and Oracle Payroll 11i
Oracle HR Rel 11.0.3 is already implemented and we are going to implement Oracle Payroll. I have a crazy idea to implement Payroll Rel 11i. Is that possible?. If yes, what are the risk areas for me to consider?.
-
On iPad when selecting mail getting multiple boxes saying "Cannot Get Mail" cannot connect to server. However, mail appears to be working fine ? Ca not figure why this is happening ?