Change the uri of business service in OSB
Hi,
i hve a business service which write some files to a directory i want to replace the directory path with a variable (i have given the directory path in xquery and store it in a variable) can anyone tell me how can i achieve this ??
and i am calling this service in my proxy service using service callout.
thanks
Edited by: 990437 on Mar 6, 2013 9:07 PM
Hi 990437 ,
want to replace the directory path with a variable.. and i am calling this service in my proxy service using service callout.Inside service callout -- Request Actions -- use Routing Options action and assign variable in URI expressions
OR if you are using JCA File adapter
Inside service callout -- Request Actions -- use Set Transport Headers action
Set Transport Header for Outbound request and add Header.Browse to jca.file.Directory from dropdown box in header and assign the new new directory location
( variable ) in under Action -- Set Header --Expression
Regards,
Abhinav Gupta
Similar Messages
-
Having problem in passing the values in business service in OSB.
hi ,
in my requirement i have to write a string in AQ , i have created a AQ adapter and a business service related to that now i have a variable which contains the string i have to pass, how i can paas this variable in my business service using service callout or publish ??
Edited by: 990437 on Mar 6, 2013 1:36 AMI checked the Business Service using the test console . It worked fine .
There is no listener on the AQ . The test messages and the messages sent using the service callout are still there.
I have logged the body variable and I can see its fine.
The thing is Service Callout works but at the end throws an error :
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884743> <BEA-000000> <Started Payload Translation...>
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884744> <BEA-000000> <End of Payload Translation...>
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884744> <BEA-000000> <Extracting Header Properties from XMLRecord...>
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884744> <BEA-000000> <No recipients specified...>
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884746> <BEA-000000> <Successfully completed outbound interaction to queue - JOB_QUEUE>
<[ACTIVE]ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884750> <BEA-000000> <Closing Interaction...>
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884750> <BEA-000000> <Closing Interaction...>
<[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-01FF0221C1FA5B53DDE4> <0000Jp3_I_3ATOELn6k3yZ1HE3Q8000002> <1362640884751> <BEA-380003> <Exception on TransportManagerImpl.sendMessageAsync: unchecked exception:, java.lang.NullPointerException
java.lang.NullPointerException
at com.bea.wli.sb.transports.jca.codec.JCAAbstractMessage.getPart(JCAAbstractMessage.java:75)
at com.bea.wli.sb.transports.jca.codec.JCAAbstractMessage.getPart(JCAAbstractMessage.java:31)
at com.bea.alsb.ws.codec.internal.runtime.soap.SoapDocCodec.marshallBody(SoapDocCodec.java:67)
at com.bea.alsb.ws.codec.internal.runtime.soap.SoapCodec.marshall(SoapCodec.java:192)
at com.bea.alsb.ws.codec.internal.runtime.soap.SoapDocClientCodec.marshall(SoapDocClientCodec.java:58)
at com.bea.wli.sb.transports.jca.codec.JCAClientCodec.createResponse(JCAClientCodec.java:57)
at com.bea.wli.sb.transports.jca.binding.JCATransportOutboundOperationBindingServiceImpl.invoke(JCATransportOutboundOperationBindingServiceImpl.java:168)
at com.bea.wli.sb.transports.jca.JCATransportEndpoint.sendRequestResponse(JCATransportEndpoint.java:209)
at com.bea.wli.sb.transports.jca.JCATransportEndpoint.send(JCATransportEndpoint.java:170)
at com.bea.wli.sb.transports.jca.JCATransportProvider.sendMessageAsync(JCATransportProvider.java:574)
at sun.reflect.GeneratedMethodAccessor563.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)......................................
On the other hand the Publish Action with either QoS mode does nothing . No exception , No messages in the AQ . It does not do anything at all. -
OSB: Invoking multiple endpoint URIs or business service at same time
Hi All,
I want to route the request to two end point URIs or business services using OSB.
Say for example, I have a BPEL which is deployed in two servers. Using this solution I have to invoke the deployed service in both servers as soon as I receive input.
Please help.
Thanks in Advanceyes you can.
1. place URIs in a xml. Save XML as a xquery resource say URICollection.xquery.
2. assign this URICollection.xquery to a variable say URICollectionVariable.
3. extract desired URIs using a xquery from URICollectionVariable. Two URIs can be stored inside one parent element, which can be output as result.
4. replace business service URI with desired URI (from result) using "Routing options".
To propagate request to two different locations, you need to use "for each" action. Run the "for loop" exactly two times, write logic for above item no.4- inside the for loop action. -
How to keep data integrity with the two business service in OSB 10.3.1.0
How to keep data integrity with the two business service in OSB 10.3.1.0
In our customer system, customer want to keep data integerity between two businness service. I thinks this is XA transaction issue.
Basing customer requirment, I created a testcase but I can't keep data integerity, For detail information, please refer the attached docs.Can you please explain what you meant my data integrity in your use case?
Manoj -
Using a uddi key to create a business service in OSB
I want to be able to use a service registry key when creating a business service in OSB. I've found documentation on how to do this in Oracle ESB, but not in OSB.
From the documentation for OSB, I can only find a way to synchronize the business services imported from the service registry (when i search through the imported services there is no mention of the uddi key that i can see). I can choose to auto-import when setting up the registry, but I'm not sure exactly what this behavior does.
From the console documentation (http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/consolehelp/uddi.html)
"You can use the Auto-Import Status page to synchronize changes to a service with those present in the registry. Upon any changes to a service in the registry, Oracle Service Bus provides notification of the change on the Auto-Import Status page which lists all out-of-sync services. You can then synchronize the service in the Oracle Service Bus Console with the corresponding service in the UDDI registry."
This setting seems to automatically update the endpoint of the business service wihtout that administrator having to do anything, but what is actually being done? Is the service bus updating the endpoint as soon as it has been notified of a change or when i view/call the service is the endpoint being looked up?
Am I missing something??
Edited by: user498458 on Apr 27, 2009 11:30 AMI took your advice and re factored the Receive class so it had all the functionality I needed except two methods which would then be overridden in the derived classes. What I had a hard time understanding is once an object of class say SpecialReceive extends Receive it can be referred to as Receive yet still maintain that it's a SpecialReceive.
What I mean is if I give a Receive object to some method and this method has no idea that this object is actually SpecialReceive and it calls a method say run() which gets overridden by the SpecialReceive. I thought that since this method has no idea what type of Receive this object is it will execute Receive's run(). But it actually does know what type of class it is and it executes the right run() method (the one that SpecialReceive overrides).
After I realized this there is no more need for casting.
Thanks everyone for your contributions. -
Problem in creating JMS business service in OSB
Hi all
I am creating a JMS business service in osb:request /response is TEXT
It write to "*QueueSend*"-which is my URI endpoint
I have a MDB which read from "*QueueSend*" and write to "*QueueReceive*"
i have given the *"Response Endpoint*" in jms business service to point to "*QueueReceive*"
When i send the msg, it write to QueueSend and mdb writes it to QueueReceive but JMS business service doesn't read from QueueReceive,it just wait a long .......
What is the problem??
Thanks
RohanHi Rohan,
Are you able to see consumers on "QueueReceive"?
If no, then your BS is not listening on this queue. Check the end-point again. Check server logs to know if any error occured while BS tried to connect with Queue. Restart your server which has this queue and then the OSB, and try again.
Regards,
Anuj -
Best practices for Calling Multiple Business Services in OSB
Hi All,
I have a requirement where I need to call multiple business services in OSB. We are presently calling them sequentially in a proxy pipeline. I was wondering if we could accomplish the same task in a better way. Each of the business services are mutually exclusive.
Thanks in Advance,
RudrakshHi Eric,
Thanks for the response. We figured that it is possible to call multiple services with Split Join. However, we ran into the issue you described. We had a blocking call and had to wait until each of the services returned a response.
However, we needed a Async model for our design and felt that this might not be a right fit.
We are now looking at implementing the publish option with QoS configured as this fits our usecase better. Thanks for the help again.
Rudraksh -
Provide authenticated username as parameter to a business service in OSB 12c
Dear OSB/OSB experts,
I have the following issue:
1. I have a web service that would accept username as a parameter in the SOAP request in order to do some internal authorization checks (filtering database rows, tables, etc.)
2. I want to connect that web service as business service in OSB 12c
3. The proxy service should NOT accept username as parameter
4. The proxy service should be protected via OWSM policy for authentication (either against the WLS authentication providers or through SAML tokens validation)
Based on the above is there any mechanism in the implementation of the proxy service to get the authenticated username from the security context and provide it as a parameter to the business service?
The authentication policy could use SAML tokens between two WLS domains - one will be running the WLS where proxy service clients will be running and the other - for the SOA 12c.
Many thanks in advance,
AnatoliHI,
u can use Conditional Branching
http://docs.oracle.com/cd/E13159_01/osb/docs10gr3/userguide/modelingmessageflow.html#wp1061670
Split join would be used in case u need to split your request and call your Business Service in Serial/parallel & then gather resposnes from multiple callouts to have single response
http://docs.oracle.com/cd/E13159_01/osb/docs10gr3/userguide/splitjoin.html#wp1137258
Abhinav -
How to change the owner of business rules
Hi,
How to change the owner of the business rule's in hyperion 11.1.2.1.
When i changed the owner name from planning to xxxxx i get "User not found reverting to nothing".
Kindly help me with what id should i login to EAS (essbase administration services console) and the detailed process of changing the owner of business rule in properties tab.
Cheers
Praveen
Edited by: Praveen on Nov 7, 2011 8:43 AMNo....
There is no 'ownership' of a tablespace. No such thing.
UserA.tbl1 is owned by UserA, which is the same as saying it is in the schema UserA. It might be in tablespace USERS. If you want to change which tablespace it lives in, you can 'alter table' it to the new tablespace such as BIG_USERS. It would still be UserA.tbl1. I think you can move it online using Oracle's online reorg abilities.
If you want the table to be owned by UserB, then you have to either export/import or CREATE TABLE AS SELECT it into UserB's schema. However doing so means that the table can no longer be referenced as UserA.tbl1. If you want that reference to work, you have to create a synonym in UserA's schema that points to UserB.tbl1. At no point does the ownership of the tablespace come in to question.
I think you meant 'schema' instead of 'tablespace' in your original quesetion. -
Dynamic csf-key to Business service of OSB?
We have created single Business Service which is getting called from one proxy service to execute different Web Service end points.
For different end point execution I want to pass different authentication parameters.
Currently we have configured User Id and Password through single csf-key through policy.
Since csf-key is secured option to pass authentication parameters to end point, is it possible to configure dynamic csf-key to Business service of OSB?Create a business service using file transport and type "Text".
Obtain the file name and assign to $body in ur proxy service stage and publish to the business service u just created. -
How to change the responsible in a service order
Hi.
Does anyone know how to change the responsible in a service order?
I am working on CRM7
Thanks
RobHi Radek
It falls in to an endless loop, cause the 'CRM_ORDER_MAINTAIN' calls the BAdI 'ORDER_SAVE', because of that I have to find the right place to call the function 'CRM_ORDER_MAINTAIN'.
I have done an example calling the 'CRM_ORDER_MAINTAIN' out of 'ORDER_SAVE' using hard coded values and it works.
Thanks
RoB
Edited by: Roberto Quezada Olmos on May 26, 2009 3:23 PM -
Changing the password of scom services account.
hello experts,
I have installed Single SCOM Management Server with following services accounts , all the Domain Users account :
Action Account
Data Access Service
Data Reader
Data Ware Write Service
also monitoring some of Computers.
But now I have to change password of all these accounts from AD,then I wants to know :-
1. Where change the Password of these Services Account on SCOM Management server.
2.Are changing the passwords will effect the working of SCOM and monitoring of computer which are currently under monitoring of scom.1. Action account
http://technet.microsoft.com/en-us/library/hh456432.aspx
2. Data Access Service and Configuration Service account
http://technet.microsoft.com/en-us/library/hh456438.aspx
3. data Reader: reporting services configuration manager --> modify the following acouunts password , Report server service account , curent report server database credential, execution account
roger -
Having multiple Stored procedure in a single Business Service in OSB
Hi,
Please let me know is it possible to have multiple Stored Procedure inside one business service in OSB.
Regards,
AbdulHello Abdul,
It is not possible to serve multiple stored procedures/functions with one business service because one business service can be based on one adapter only and one DB adapter can interface one DB component only. You may have one stored procedure which internally makes call to all other procedures as per your requirement and from OSB, call this single stored procedure using one business service.
Regards,
Anuj -
Can we design the scenario with Business service
Hi,
I have IDOCXIFile Scenario
Can we design the scenario with Business service for SAP R/3 and As well as for File system also????
I dont have details abt the SAP R/3 system to create the Tech system in SLD
Regards
SumanHello Suman,
Go through this Blog..
/people/prateek.shah/blog/2005/06/08/introduction-to-idoc-xi-file-scenario-and-complete-walk-through-for-starters
These are the steps which u have to do
STEPS IN DESIGN
1. Import idoc from the SAP System (SAP02) through imported objects.
2. Create Data Type, Message Type, Message Interface for the Outbound File.
3. Create Message Mapping with file Message and idoc (Matmas04)
5.Create Interface mapping between File Interface and the idoc.
Steps to be followed in Creation of Technical and Business System
Technical System
In SLD, click on technical landscape->New Technical System->WebAS ABAP.
Business System.
1.Goto Business Landscape->New Business System->Name the business system.
2. Choose the technical system that needs to be attached->WebAS ABAP->Technical System Name.
Preconfiguration steps for transfer of data to IDOCS
1.Create a RFC Destination in SM59 of XI Server of type.
2.In transaction IDX1 ,create a port for the client of XI server.
3. The port has to be displayed in the idx2 transaction and we should be able to view the idocs which we imported through integration repository.
Steps in Configuration
1. Goto service without party, right click->Assign a business system.
2. Choose the business system to be added.
3. Create a File Sender Service with communication channel for the same.
4. Create an idoc receiver channel under the business system.
7. The Idoc type( which data is to be written) is mentioned as inbound parameter.
8. Mention the logical Name in the Service->Adapter Specific Parameters of both the File Sender Service as well as the business system.
9. Make the Sender Agreement for theFile Sender with communication channel.
10.Create the Receiver Determination and Interface Determination for the business system.
11.Create the Receiver Agreement for the Business system.
Step for Configuration fo IDOC in R/3
SM59-rfc destination
IDX1-port
IDX2-load metadata
we05-IDoc status records
BD54-Create Partner Number
We20-Create Partner Profile
WE19-Testing IDoc Processing
Do these configurations in R/3 and in XI...
SAP XI
1) RFC Destination (SM59)
a) Choose create.
b) Specify the name of the RFC destination
c) Select connection type as 3 and save
d) In the technical settings tab enter the details SAP SID/URL and system number#.
e) Enter the Gateway host as same details above SID/URL.
f) Gateway service is 3300+system number#.
g) In the Logon /Security tab, enter the client user & Password details of Destination system.
h) Test the connection and remote logon.
2) Create Port (IDX1)
a) Select create new button
b) Enter the port name as SAP+SID (The starting char should be SAP)
c) Enter the destination client.
d) Enter the RFC Destination created in SAP R/3 towards other system.
e) Save
3) Load Meta Data for IDOC (IDX2)
a) Create new
b) IDOC Message Type
c) Enter port created in IDX1.
SAP R/3
1) RFC Destination (SM59)
a) Choose create.
b) Specify the name of the RFC destination
c) Select connection type as 3 and save
d) In the technical settings tab enter the details SAP SID/URL and system number#.
e) Enter the Gateway host as same details above SID/URL.
f) Gateway service is 3300+system number#.
g) In the Logon /Security tab, enter the client user & Password details of Destination system.
h) Test the connection and remote logon.
2) Create Port (We21)
a) First Select Transactional RFC and then click create button
b) Enter the destination port name as SAP+SID (The starting char should be SAP)
c) Enter the destination client.
d) Enter the RFC Destination created in SAP R/3 towards other system.
e) Save
3) Create Partner Profile (WE20)
a) Create New
b) Create the Partner no. name as same the logical system name of the destination system.
c) Select Partner type LS
d) Enter details for Type: US/USER, Agent, and Lang.
e) Click on the + button to select the message type.
f) Select Partner no. and LS which ever create above.
g) Select Message type
h) Select Process code related to the Message type.
I) save.
Reward Points if it is useful..
Thanks,
Satya Kumar -
Calling Secured Business Service from OSB
Hi,
I am trying to call a Service which is secured.
the Request SOAP message is like :
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ns="urn:crmondemand/ws/activity/10/2004"
xmlns:act="urn:/crmondemand/xml/activity"
xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
*<soapenv:Header>*
* *<wsse:Security>**
* *<wsse:UsernameToken>**
* *<wsse:Username>USERX</wsse:Username>**
* *<wsse:Password type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">PASSWORD</wsse:Password>**
** </wsse:UsernameToken>**
* </wsse:Security>*
*</soapenv:Header>*
<soapenv:Body>
========================
========================
</soapenv:Body>
</soapenv:Envelope>
I have created a business service and attached the service to Proxy service.
I am new to OSB.I am unable to change the header data.In the forums i found couple of responses pointing to create
Policy file or creating service account which were not clear to me.Dear expert , please guide me what exactly need to be done in this case.
Thanks in advance,
Regards,
Chandrahi,
Finally i have done it with the help of documentation.
solution is :
In the service configuration --> Policy -->select OWSM policy bindings (your domain should be configured with OWSM extention))
select predefined oracle/wss_username_token_client_policy from in the OWSM configuration window
next login to the em console: http://localhost:7001/em
In the left hand side pane Go to Weblogic Domain -> select <your domain name>
In the central pallete Weblogic Domain drop down goto secutiry --> Credentials.
Here create a map with name : oracle.wsm.security (if not exists)
Create a key by selecting the map as :oracle.wsm.security
Key name : Sample_KEY
Type : password
Username: The username you are expecting in the soap header
Password: The password you are expecting in the soap header
Now go back to your service configuration -> Policy -> select the policy that you have added.
there you can see the properties button enabled.click on it...
there for the default_value = basic_credentials give the over_ride value as Sample_KEY (the key name you have mapped to the map)
Regards,
Chandra sekhar kommalapati
Maybe you are looking for
-
InDesign and XML Automatic pagination
Hi Scripters, I am trying to create "Automatic pagination" system for four to six page journals, XML--->INDD--->PDF I am comfort with creating and applying styles I am done. I just don't have Idea how to place the images and tables automatically afte
-
What happened to the music in my itunes?
I went to put more music on my ipod touch 4g and the only music that was on it was what i purchased. Last time i used itunes everything was there. ***?
-
Spinning ball and mouse pointer icons look really low res!
Why do the spinning ball and mouse pointer on my 24" look graphically low res? I know it's only a minot point but it kind of spoils the beautiful look of the screen. Tc
-
My iCloud on my windows 7 system no longer work and the refresh icon in outlook 2010 has disappeared. I have deleted the applicaton and reinstalled it and still no luck. How can I get this device to work with iCloud again? It was working great!
-
Error when trying to delete data from 0Plant
I am trying to delete the master data from 0Plant and get the following message: The system is unable to delete all of the specified m because some of it is still in use. (See log: Object RSDMD, sub-object MD_DEL ) Do you wa