Error calling BLS Transaction as Web service
Hi,
I am trying to call BLS tranx as Webservice from another BLS Tranx.
I craeted the simple BLS with no input parameter and set only one output parameter.
Then i created the WSDL as
http://<server:port>/XMII/WSDLGen/<Transaction path>.
In new BLS tranx, i created the Web Service action block and gave this WSDL URL (http://<server:port>/XMII/WSDLGen/<Transaction path>).
I gave username and password and selected the port(XacuteWSSoap) and then operation( xacute).
In Links, I gave the Loginname and Password.
But while executing, it showed the error as
Error Invoking Web Service Action: Status (401): Unauthorized
My username and Loginname and passwords are correct only.
What is the problem and how to solve it.
Regards,
Senthil
Hi,
Which SAP MII version you are using?
I have tested one piece in MII 12.0.9 it works for me following are steps which i followed.
After WSDL generation
1. in Web service action block --> cofigure i am passing following parameters
WSDL base URL: http://<server:port>/XMII/WSDLGen/<transaction Path>
User Name: XXX
Password: XXX
2. in Web service action block --> Links I am passing following parameters
WSDLUrl : http://<server:port>/XMII/WSDLGen/<transaction Path>
Web_Service_0.XacuteRequest{/ns1:XacuteRequest/ns1:LoginName} : XXX
Web_Service_0.XacuteRequest{/ns1:XacuteRequest/ns1:LoginPassword} : XXX
Refer below SDN thread may be helpfull:
[Web Service Action Block;
Hope it helps!!
Regards,
Manoj Bilthare
Similar Messages
-
Error while calling MII transaction as web service
Hi all,
I am using MII version 12.1.8
When i try calling a BLS as a web service i am getting an error as " [ERROR] Error Invoking Web Service Action: Status (502): Proxy Error ( No data record is available. ) "
The same WSDLGen url is working from the browser. The path is http://<server>:50000/XMII/WSDLGen/<TrxPath>
I also gave Proxy Host and Proxy Port in System Management --> System Administration
Is there anything i am missing in the web service action.
Kindly help
Regards
MuzammilHi Diana,
It is working now. I removed the proxy settings from system administrator and added a new credential alias for web service. And then it started working..
The scenario which i am trying is as mentioned. We need to call a transaction from a diiferent MII Server. So at first i was trying with the Trx within the same server.
Hope this is the best way to access the transaction from a different server.
Regards
Muzammil -
Error while calling MII transaction as web service from ABAP
Hello Experts,
I want to call a MII transaction from ABAP program, as a web service.
Following is output of http://<<server>>:50000/XMII/SOAPRunner/TAG_TRX (TAG_TRX is name of my transaction).
<?xml version="1.0" encoding="UTF-8" ?>
- <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.sap.com/xMII" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.sap.com/xMII">
- <!-- Types
-->
- <types>
- <s:schema elementFormDefault="qualified" targetNamespace="http://www.sap.com/xMII">
- <s:complexType name="InputParams">
- <s:sequence id="InputSequence">
<s:element maxOccurs="1" minOccurs="0" name="WEIGHT" type="s:string" />
<s:element maxOccurs="1" minOccurs="0" name="BATCHID" type="s:string" />
</s:sequence>
</s:complexType>
- <s:element name="XacuteRequest">
- <s:complexType>
- <s:sequence>
<s:element maxOccurs="1" minOccurs="0" name="LoginName" type="s:string" />
<s:element maxOccurs="1" minOccurs="0" name="LoginPassword" type="s:string" />
<s:element maxOccurs="1" minOccurs="0" name="InputParams" type="s0:InputParams" />
</s:sequence>
</s:complexType>
</s:element>
- <s:complexType name="Rowset">
- <s:sequence>
<s:element maxOccurs="unbounded" minOccurs="0" name="Row" type="s0:Row" />
</s:sequence>
<s:attribute name="Message" type="s:string" />
</s:complexType>
- <s:complexType name="Row">
<s:sequence id="RowSequence" />
</s:complexType>
- <s:element name="XacuteResponse">
- <s:complexType>
- <s:sequence>
<s:element maxOccurs="1" minOccurs="0" name="Rowset" type="s0:Rowset" />
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</types>
- <!-- Messages
-->
- <message name="XacuteSoapIn">
<part element="s0:XacuteRequest" name="parameters" />
</message>
- <message name="XacuteSoapOut">
<part element="s0:XacuteResponse" name="parameters" />
</message>
- <!-- Ports
-->
- <portType name="XacuteWSSoap">
- <operation name="Xacute">
<input message="s0:XacuteSoapIn" />
<output message="s0:XacuteSoapOut" />
</operation>
</portType>
- <!-- Bindings
-->
- <binding name="XacuteWSSoap" type="s0:XacuteWSSoap">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http" />
- <operation name="Xacute">
<soap:operation soapAction="http://www.sap.com/xMII" style="document" />
- <input>
<soap:body use="literal" />
</input>
- <output>
<soap:body use="literal" />
</output>
</operation>
</binding>
- <!-- Service mapping
-->
- <service name="XacuteWS">
- <port binding="s0:XacuteWSSoap" name="XacuteWSSoap">
<soap:address location="http://<<server>>:50000/XMII/SOAPRunner/TAG_TRX" />
</port>
</service>
</definitions>
Now, when I am using http://<<server>>:50000/XMII/SOAPRunner/TAG_TRX to create a Enterprise Service in SAP (i.e. SE80 transaction-> Create Enterprise Service-> Service Consumer-> URL/HTTP Destination-> URL ... I am getting following error.
Incorrect value: Entity "<<document>>"(5 /93 ). unexpected symbol: '<'
But, whenever I am using the same URL in MII BLS, it does not give any error. It correctly shows all input and output parameters.
Please help me to resolve this issue.
Regards
Neeta.Now, I am able to create the Web Service in SAP and it is now showing the respective class, attribute and methods to execute this web service (web service to call MII transaction).
But when I am calling it from ABAP (a simple Web Dynpro for ABAP method), it is showing me the following error:
Error (id=GET_BUSINESS_SYSTEM_ERROR): An error occurred when determining the business system (LD_ERROR)
Thought this error is coming from ABAP program, but I am sure that this is related to some configuration at SAP level. (Let me inform you that there are two different servers for SAP Web Dynpro ABAP and SAP MII.
Please help.
Thanks in advance. -
Error calling[Standalone proxy]uFF1Aexternal web service(SSL + anonymous)
hi SDNer
I use Standalone proxy to call external web service(SSL + anonymous)
web service Endpoint is : https://localhost:8443/HelloWorldService/services/HelloWorld
NWDS VERSION: NWDS-IDE-700SP12
Standalone SEI is :
HelloWorld
HelloWorldHttpBindingStub
HelloWorldImpl
HelloWorldPortType
Calling Code as following:
//1. Access the implementation class of the service interface
HelloWorldImpl ws = new HelloWorldImpl();
//2. Create the instance of a logical port
Remote remote = ws.getLogicalPort();
HelloWorldHttpBindingStub stub = (HelloWorldHttpBindingStub) remote;
//3.
SecurityProtocol securityProtocol =
(SecurityProtocol) stub._getGlobalProtocols().getProtocol(
"SecurityProtocol");
AuthenticationContext ac =
securityProtocol.getAuthenticationContext();
ac.setIgnoreSSLServerCertificate(true);
//4. invoke the business methods
String ver = stub.example(str1, str2);
Exception is :
java.rmi.RemoteException: Service call exception; nested exception is:
iaik.security.ssl.SSLException: Peer sent alert: Alert Fatal: handshake failure
at com.sap.ws.HelloWorldHttpBindingStub.example(HelloWorldHttpBindingStub.java:84)
at com.sap.ws.HelloWorldHttpBindingStub.example(HelloWorldHttpBindingStub.java:94)
at TestHelloWorld.wsHelloWorld(TestHelloWorld.java:55)
at TestHelloWorld.main(TestHelloWorld.java:24)
Caused by: iaik.security.ssl.SSLException: Peer sent alert: Alert Fatal: handshake failure
at iaik.security.ssl.r.f(Unknown Source)
at iaik.security.ssl.x.b(Unknown Source)
at iaik.security.ssl.x.a(Unknown Source)
at iaik.security.ssl.r.d(Unknown Source)
at iaik.security.ssl.SSLTransport.startHandshake(Unknown Source)
at iaik.security.ssl.SSLTransport.getOutputStream(Unknown Source)
at iaik.security.ssl.SSLSocket.getOutputStream(Unknown Source)
at com.sap.engine.services.webservices.jaxm.soap.HTTPSocket.initStreamsFromSocket(HTTPSocket.java:669)
at com.sap.engine.services.webservices.jaxm.soap.HTTPSocket.initializeStreams(HTTPSocket.java:470)
at com.sap.engine.services.webservices.jaxm.soap.HTTPSocket.getOutputStream(HTTPSocket.java:427)
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.HTTPTransport.getRequestStream(HTTPTransport.java:355)
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.outputMessage(MimeHttpBinding.java:550)
at com.sap.engine.services.webservices.jaxrpc.wsdl2java.soapbinding.MimeHttpBinding.call(MimeHttpBinding.java:1432)
at com.sap.ws.HelloWorldHttpBindingStub.example(HelloWorldHttpBindingStub.java:77)
... 3 moreHi
Answer is pure assumption
The error "iaik.security.ssl.SSLException: Peer sent alert: Alert Fatal: handshake failure" is mentioned in the the OSS note
Note 1157248 - SAP Business Connector with SSL / Common Problems
Pls take opinion from SAP / Basis before implementing the note
Regards
Madhan D -
401 Unauthorized Error When calling a SharePoint REST web service from SharePoint 2013 Workflow
We have our Workflow Manger installed on the same server as our SharePoint 2013 WFE development environment. When creating a SharePoint 2013 Workflow all Calls to a SharePoint 2013 REST web service results in a 401 Unauthorized error.
As an example I created a simple workflow that should return a JSON result. The REST Url returns the results in the browser without error.
Set Variable:webServiceUrl to https://<hostnamedsitecollection>/_vti_bin/client.svc/web/lists/getbytitle('ISR%20Approvers')/Items?$select=Title&$filter=Title%20eq%20%27General%27
then Build{...} Dictionary (Output to Variable:requestHeaders)
then Call [%Variable:webServiceUrl%] HTTP web service with request (ResponseContent to Variable:responseContent |ResponseHeaders to responseHeaders | ResponseStatusCode to Variable:responseCode)
The RequestHeader is set to the requestHeaders variable though the web service call properties
then Log Variable:responseCode to the workflow history list
After manually running the workflow in SharePoint on a list item in the ISR Approvers list it Logs "Unauthorized" in the Workflow History Log. It does this with every SharePoint REST web service call that I have tried through the workflow.
It doesn't have anything to do with the Workflow Manger being installed on the same machine as the SharePoint WFE does it?
Thank You for any insightHi,
According to your post, my understanding is that you had 401 Unauthorized Error when calling a SharePoint REST web service from SharePoint 2013 Workflow.
Please make sure you use the ‘Call HTTP Web Service’ correctly.
You can enter the URL into the brower to check whether it is correctly.
You need to
create the Request header requestHeaders
using a Dictionary:
Accept : application/json;odata=verbose
Content-Type : application/json;odata=verbose
To associate the
requestHeaders variable, select the Call action
property, set the RequestHeaders property to
requestHeaders.
Please refer to the following articles:
Working with Web Services in SharePoint 2013 Workflows using SharePoint Designer 2013
Calling the SharePoint 2013 Rest API from a SharePoint Designer
Workflow
In addtion, you need to make sure you install the workflow manager correctly.
More information:
Install and configure workflow for SharePoint Server 2013
Known Issues in Workflow Manager 1.0
Troubleshooting Workflow Manager 1.0 Management and Execution
Best Regards,
Linda Li
Linda Li
TechNet Community Support -
Error in calling a method from Web services
Hai Experts,
When i try calling a method in web services from webdyn pro its not being called, i get a error SAOPFAULTCODE: 1 . wat might be the problem? The thing i am working with is tat when a employee try to create a FTR(HCM : Travel), a check has to be done in web services and then allow certain employees to proceed and rest should get a error msg but, i could find all the employees r getting the same error msg . Please resolve this issue.
Regards and thanks in advance,
Srija.Hello,
Add the line :
SET_REPORT_OBJECT_PROPERTY(RAP,REPORT_DESNAME,'test.rdf');
before
VRAP:=RUN_REPORT_OBJECT(RAP);
(Of course, 'test.rdf" is an example, replace it by the name of the reports who want to execute)
Regards -
How to retrieve error message(s) after failed web service call
Hi!
I tried to create an item using the web service ego_item_pub.process_item and it worked ok (version 12.1.1). Sending the same request again, I got an error which should be ok since the item id already exists. The thing is, that I only get an "E" as return status:
<X_RETURN_STATUS>E</X_RETURN_STATUS>
<X_MSG_COUNT>1</X_MSG_COUNT>
As described in the integration repository, there should be a parameter called msg_data which should contain the message if there is exactly 1 message, but I cannot find it.
So, I tried to get the message using fnd_message.get, but the response of my web service call is:
AuthorizationFailure : User not authorized to execute service. (I use sysadmin/sysadmin as ws security user).
I use the following grant details:
All Users Direct GLOBAL Revoke Action Enabled
SYSADMIN SYSADMIN Direct USER
What else can I do or how can I retrieve error messages for a failed web service call?
Thanks a lot,
KonradHi Konrad,
As we've found out, search the Integration Repository for internal name ERROR_HANDLER and use that. Letting the general public know the answer for this one!
Regards,
Gareth
http://garethroberts.blogspot.com -
Error when calling BPEL process from web service client
I have created three projects here ,there're no problem when testing Composite Application(SynchronousSampleApplication) by test case inside this project.
When I create a Java Application(SynchronousSampleApp),inside this project I've created a web service client from file WSDL of BPEL. After that, In Main class, I call an operation from web service client.But have the following error:
Jul 17, 2008 4:48:22 PM synchronoussampleapp.Main main
SEVERE: null
java.rmi.RemoteException: HTTP transport error: java.net.MalformedURLException: For input string: "${HttpDefaultPort}"; nested exception is:
HTTP transport error: java.net.MalformedURLException: For input string: "${HttpDefaultPort}"
at SynSample.SynchronuosSamplePortType_Stub.synchronuosSampleOperation(SynchronuosSamplePortType_Stub.java:83)
at synchronoussampleapp.Main.main(Main.java:24)
Caused by: HTTP transport error: java.net.MalformedURLException: For input string: "${HttpDefaultPort}"
at com.sun.xml.rpc.client.http.HttpClientTransport.invoke(HttpClientTransport.java:140)
at com.sun.xml.rpc.client.StreamingSender._send(StreamingSender.java:96)
at SynSample.SynchronuosSamplePortType_Stub.synchronuosSampleOperation(SynchronuosSamplePortType_Stub.java:67)
... 1 more
Please help me soon. Thanks very much!Can't anyone help me? I'm using Netbean 6.1 and Glassfish server.
Do I need any additional plugin? -
Lag when calling BLS Transaction from within another
Using MII 12.0.
In MII class, they told us a "best practice" was to check the "Reload Transaction after Execution" box in the configuration of a Transaction call within a BLS. The reasoning behind it was that should this not be checked, a previous result of that called BLS transaction would still be cached in memory and used instead of the newly assigned values from within your calling BLS.
Checking the "Reload transaction after Execution" box forces MII to reload that transaction when it is called.
In time analysis, what has been noticed is that there's a significant - up to 9 seconds - lag time when one BLS calls another BLS. On a time-sensitive operation, that is an eternity. That amount of overhead defeats any hope of using common code libraries.
Questions -
1. Is this a true "best practice", or is it one that adds unnecessary overhead to a BLS?
2. If the calling BLS executes 1 time - but is subject to be executed multiple times over a certain interval - is checking the Reload box of the BLS it is calling unnecessary?
3. Even if you pass new data each time you call that BLS, is it still going to use/return whatever data it has cached until the cache expires?
4. Is there another way to ensure that the called BLS uses the data you pass it (and returns the corresponding result set) without incurring the amount of overhead that we have noted?
ThanksThe version we're on is 12.0.6 Build 13, and moving to 12.1 (something I am not directly involved in). In this version, I'm not seeing the menu options you describe, so it's apparently in 12.1 or later.
The issue we are having if the "Reload transaction after execution" box is not selected is indeed caching of values.
For example -
BLS1 runs every 5 minutes
BLS2 is called from BLS1, and in this case, retrieves error log info from a table - a common module used by several BLS's.
BLS3 is also called from BLS1, and in this case, writes to an error log using information retrieved from BLS2 from within the execution of BLS1. BLS2 & BLS3's calls are in 2 separate sequences, one after the other.
If BLS2 & BLS3 DO NOT have the "Reload Transaction after execution" checked, each will run with whatever the cached data in memory is for them, even though inside BLS1 I am assigning values to the input of BLS1 to send to BLS2, and passing the returned data from BLS2 into BLS3. Unless it's checked, BLS2 & BLS3 would continue to be called, however, it would be with whatever data has been cached for them.
If that "Reload" switch is checked, it will reload each transaction & call it with whatever data is being passed.
This was mentioned in the MII class I was in also. This is a generalization, but the way they described it was being similar to how you might save a web page to your local PC, and that unless that page is refreshed & changed, that from that point on, every time you brought up your saved web page, it would always display the same values in it. They didn't go into great deal to explain the mechanics of it, but MII would only load it the first time it executed, and that unless you forced it (by checking the Reload switch), it would always execute using the same cached values no matter what you were passing. -
Problem consuming a MII BLS as a Web service. No data getting displayed
Hi experts,
I am trying to consuming a MII BLS as a Web service from Visual Basic .Net 2010. But its a failure. I am unable to view any data on the VB grid. I did piece of code referring to the article in
http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/b0563b23-be97-2b10-02a0-fb8fac9ab39e
I am totally new developer in Microsoft products. Here is the code that I used from the above white paper.
Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim wsVcValues As New SapVcValues.XacuteWS
Dim myInParams As New SapVcValues.InputParams
Dim varResult As SapVcValues.Rowset
'Pass your input parameters to the transaction
myInParams.Plant = "1000"
'Now lets call the transaction using the guest account
varResult = wsVcValues.Xacute("guest", "guest", myInParams)
DataGridView1.DataSource = varResult.Row
DataGridView1.Refresh()
varResult = Nothing
End Sub
End Class
Here are some deviations when compared to the above article.
1. Used MII 12.1 transction.
2. Used VB .Net 2010 as the development environment.
The transaction that I used has 1 action with simple query which returns the o/p xml.
Please help! I am stuck.
Regards,
Rajesh.Hi Jeremy,
You are right. I am getting a log in page when try to call the WS from the browser. I unchecked WSDLGenSecurityEnabled option. Now I am not redirected to log in page. But I am not getting the required output in the XML.
I am using SAP MII 12.1Service Pack 6.
Please find the XML the is getting displayed when I call the WS from browser below:
=====================================================================================================
<?xml version="1.0" encoding="UTF-8"?><definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://www.sap.com/xMII" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://www.sap.com/xMII">
<!-- Types -->
<types>
<s:schema elementFormDefault="qualified" targetNamespace="http://www.sap.com/xMII">
<s:complexType name="InputParams">
<s:sequence id="InputSequence">
<s:element maxOccurs="1" minOccurs="0" name="Input1" type="s:string"/><s:element maxOccurs="1" minOccurs="0" name="Input2" type="s:string"/></s:sequence>
</s:complexType>
<s:element name="XacuteRequest">
<s:complexType>
<s:sequence>
<s:element maxOccurs="1" minOccurs="0" name="LoginName" type="s:string"/>
<s:element maxOccurs="1" minOccurs="0" name="LoginPassword" type="s:string"/>
<s:element maxOccurs="1" minOccurs="0" name="InputParams" type="s0:InputParams"/>
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="Rowset">
<s:sequence>
<s:element maxOccurs="unbounded" minOccurs="0" name="Row" type="s0:Row"/>
</s:sequence>
<s:attribute name="Message" type="s:string"/>
</s:complexType>
<s:complexType name="Row">
<s:sequence id="RowSequence">
<s:any maxOccurs="132" minOccurs="1" type="s:string"/></s:sequence>
</s:complexType>
<s:element name="XacuteResponse">
<s:complexType>
<s:sequence>
<s:element maxOccurs="1" minOccurs="0" name="Rowset" type="s0:Rowset"/>
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</types>
<!-- Messages -->
<message name="XacuteSoapIn">
<part element="s0:XacuteRequest" name="parameters"/>
</message>
<message name="XacuteSoapOut">
<part element="s0:XacuteResponse" name="parameters"/>
</message>
<!-- Ports -->
<portType name="XacuteWSSoap">
<operation name="Xacute">
<input message="s0:XacuteSoapIn"/>
<output message="s0:XacuteSoapOut"/>
</operation>
</portType>
<!-- Bindings -->
<binding name="XacuteWSSoap" type="s0:XacuteWSSoap">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="Xacute">
<soap:operation soapAction="http://www.sap.com/xMII" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<!-- Service mapping -->
<service name="XacuteWS">
<port binding="s0:XacuteWSSoap" name="XacuteWSSoap">
<soap:address location="http://192.168.128.41:50700/XMII/SOAPRunner/MIIDemoHome/DashBoard/Test121TRX"/>
</port>
</service>
</definitions> -
Calling bls transaction on MII server startup
Hi expert,
is it possible to call bls transaction on MII server startup?
Thanks.Not that I am aware of - at least nothing directly. The first thought that would come to mind would be a scheduled job (something with a reasonable interval but not too frequent) that would check /XMII/Illuminator?Service=SystemInfo&Mode=Uptime and do a datediff check between datenow and the xml resulting StartTime.
At least you will know how long MII's been up and running. -
Calling a Axis2 Secure Web Service with JDeveloper 11g
We are attempting call a Blackboard (Axis2) web service using Oracle JDeveloper 11g. We are currently unable to generate the security header required, could anyone please point me in the right direction?
I have following the following steps highlighting my issue. What steps might I be missing? Should I have created a keystore? Should I implement this with the metro stack? Any help or suggestions to go in a different direction would be greatly appreciated.
1. Install JDeveloper 11.1.1.5.0 (accept defaults)
2. Open JDeveloper
3. Create a Project by selecting File > New > Generic Project > Finish
4. Right-click newly created project and select New
a. Select Web Services in the Categories
b. Select Web Service Proxy, then Next
c. Next
d. Select JAX-WS Style, then Next
e. Enter http://gpstc.blackboard.com/webapps/ws/services/Context.WS?wsdl for the WSDL Document URL, then Next
f. Next
g. Remove “:80” from the Endpoint URL in each row, the first row should be http://gpstc.blackboard.com/webapps/ws/services/Context.WS, then Next
h. Next
i. I don’t see an option for WSSOAP12Binding which this webservice utilizes, so I selected “oracle/wss11_username_token_with_message_protection_client_policy”
j. Next
k. Finish
5. As a test, add the following code after “// Add your code to call the desired methods.”
GetServerVersionResponse myv = new GetServerVersionResponse();
myv = contextWSPortType.getServerVersion(new GetServerVersion());
System.out.println(myv.toString());
6. Run the Project
7. Received the following exception “Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: WSDoAllReceiver: Incoming message does not contain required Security header"
Currently running JDeveloper 11g with Oracle WebLogic Server 11gR1
Attempting to connect to Blackboard, Release 9.1.50119.0
Thanks, Adam HamHi,
Did you configure the Axis2 in Jdeveloper?
Best Regards
Sunny -
Timestamp Error when calling Encrypt and Signed Web Service
Hello,
I maked one Web Service in the Oracle Service Bus 10gR3 that supports Encryption and Sign, basically inserting (manually) this on WSDL Contract:
This two namespaces:
xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd"
xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
This Declarations:
<wsp:UsingPolicy Required="true"/>
<input>
<wsp:Policy>
<wsp:PolicyReference URI="policy:Encrypt.xml"/>
</wsp:Policy>
<soap:body use="literal" />
</input>
<wsp:Policy>
<wsp:PolicyReference URI="policy:Sign.xml"/>
</wsp:Policy>
The above declarations was inserted in the correct points inside the WSDL Contract and the Web Service is working correctly.
The Problem is related to Sign.xml declaration, when i insert this declaration:
<wsp:Policy>
<wsp:PolicyReference URI="policy:Sign.xml"/>
</wsp:Policy>
Then, the Web Service shows an error. Following the Request and Resonse (That shows the error):
Request:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ger="http://www.abc.com.br/Service">
<soapenv:Header/>
<soapenv:Body>
<ger:gerarHashSenha>
<arg0>123456</arg0>
</ger:gerarHashSenha>
</soapenv:Body>
</soapenv:Envelope>
Response:
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
<env:Header/>
<env:Body>
<env:Fault>
<faultcode>env:Server</faultcode>
*<faultstring>Can not retrieve header: {http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd}Timestamp</faultstring>*
</env:Fault>
</env:Body>
</env:Envelope>
Observation: I was invoking the WebService using the soapUI Tool.
I Tryed change the request to bellow code, but doesn't work:
<soapenv:Envelope xmlns:ger="http://www.abc.com.br/Service" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsu:Timestamp wsu:Id="Timestamp-447" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
<wsu:Created>2010-05-27T21:40:55.667Z</wsu:Created>
<wsu:Expires>2010-05-27T21:41:55.667Z</wsu:Expires>
</wsu:Timestamp>
</wsse:Security>
</soapenv:Header>
<soapenv:Body>
<ger:gerarHashSenha>
<arg0>123456</arg0>
</ger:gerarHashSenha>
</soapenv:Body>
</soapenv:Envelope>
Thanks.
Victor Jabur.someone has any idea ?
Thanks -
Calling Oracle BPM Process Web Service from Oracle Service Bus
Hi
I am using Oracle Service Bus 10gR3.
I have developed simple BPM process through Oracle BPM studio 10.3.1.0.I then followed steps below
1. Create a Process.
2. Expose the Process as a Web Service.
3. Run the project. This starts the Process Execution Engine.
4. Create an ALSB External Resource of type Management Host.
5. Create a second ALSB External Resource for registration.
6. Register the End Point
Until this point everything is fine. Then I created one project through Oracle Service Bus console. Under that created WSDL, Proxy Service and Business Service Folders. I am using the web service created through BPM studio as teh Business Service in SB . I then created one proxy service to route the request to the Business Service.
Finally when I try to test the Proxy Service by launching test console, I get the
<con:fault xmlns:con="http://www.bea.com/wli/sb/context">
<con:errorCode>BEA-380001</con:errorCode>
<con:reason>INTERNAL SERVER ERROR</con:reason>
<con:location>
<con:node>RouteNode1</con:node>
<con:path>response-pipeline</con:path>
</con:location>
</con:fault>
I also tried to debug through "Oracle Workshop for WebLogic Version 10.3 " . But I am not getting enough details as to why this is failing.
Please help me . Thanks In advance.
Thanks
Nilay
Edited by: user8950019 on Feb 1, 2010 4:11 AMHi,
When im calling wsdl created when BPM exposed as webservice in SOAP-ui, i first hit the startSession
Request is:-
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
<soapenv:Header/>
<soapenv:Body>
<exp:startSession>
<password>Employee</password>
<user>Employee</user>
</exp:startSession>
</soapenv:Body>
</soapenv:Envelope>
Response i Get is:-
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<ns1:startSessionResponse xmlns:ns1="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
<return>3782hecq1s85h</return>
</ns1:startSessionResponse>
</soapenv:Body>
</soapenv:Envelope
but when i put this sessionId in main request:-
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
<soapenv:Header/>
<soapenv:Body>
<exp:expenseReport>
<sessionId>3782hecq1s85h</sessionId>
<reportArg>
<!--Optional:-->
<comments>yes</comments>
<!--Optional:-->
<costCenter>jaa</costCenter>
<!--Optional:-->
<description>aa</description>
<!--Optional:-->
<isApproved>y</isApproved>
<!--Zero or more repetitions:-->
<items>
<!--Optional:-->
<elements>
<!--Optional:-->
<amount>700</amount>
<!--Optional:-->
<date>?</date>
<!--Optional:-->
<description>?</description>
<!--Optional:-->
<receiptChecked>?</receiptChecked>
</elements>
</items>
<!--Optional:-->
<reviewedBy>?</reviewedBy>
<!--Optional:-->
<submitDate>?</submitDate>
<!--Optional:-->
<submittedBy>?</submittedBy>
<!--Optional:-->
<total>?</total>
</reportArg>
</exp:expenseReport>
</soapenv:Body>
</soapenv:Envelope>
Response coming is :-
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>fuego.lang.ComponentExecutionException: The method 'expenseReport' from class 'xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl' could not be successfully executed.</faultstring>
<detail>
<ns1:stackTrace xmlns:ns1="http://xml.apache.org/axis/">fuego.lang.ComponentExecutionException: The method 'expenseReport' from class 'xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl' could not be successfully executed.
at fuego.lang.Invokeable.invokeImpl(Invokeable.java:244)
at fuego.lang.Invokeable.invokeDynamic(Invokeable.java:188)
at fuego.lang.Invokeable.invoke(Invokeable.java:160)
at fuego.soaptype.SoapListener.invokeDynamic(SoapListener.java:104)
at fuego.lang.Invokeable.invoke(Invokeable.java:160)
at fuego.fengine.FEngineWebServiceExecutor$2.execute(FEngineWebServiceExecutor.java:133)
at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
at fuego.fengine.FEngineWebServiceExecutor$1.run(FEngineWebServiceExecutor.java:65)
at fuego.component.Message.process(Message.java:576)
at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:780)
at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
at fuego.fengine.FEngineProcessBean.processBatch(FEngineProcessBean.java:244)
at fuego.fengine.FEngineWebServiceExecutor$WebServiceExecutorPrincipal.processBatch(FEngineWebServiceExecutor.java:168)
at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
at fuego.component.ExecutionThread.run(ExecutionThread.java:408)
Caused by: java.lang.RuntimeException: java.lang.NumberFormatException: For input string: "jaa"
at xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl.expenseReport(ExpenseReportServiceInternalAlbpmListenerImpl.xcdl:36)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at fuego.lang.JavaClass.invokeMethod(JavaClass.java:1410)
at fuego.lang.JavaObject.invoke(JavaObject.java:227)
at fuego.lang.Invokeable.invokeImpl(Invokeable.java:234)
... 21 more
Caused by: java.lang.NumberFormatException: For input string: "jaa"
at java.lang.NumberFormatException.forInputString(Unknown Source)
at java.lang.Integer.parseInt(Unknown Source)
at java.lang.Integer.valueOf(Unknown Source)
at fuego.util.Conversion.tojava_lang_Integer(Conversion.java:934)
at fuego.xobject.runtime.ConversionUtilities.fromString(ConversionUtilities.java:56)
at fuegoblock.xml.XmlElementDeserializer.deserializeElement(XmlElementDeserializer.java:175)
at fuegoblock.xml.XmlElementDeserializer.deserialize(XmlElementDeserializer.java:81)
at fuegoblock.xml.DynamicXml.createObjectFrom(DynamicXml.java:160)
at fuegoblock.xml.DynamicXml.createObjectFrom(DynamicXml.java:119)
at xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl.expenseReport(ExpenseReportServiceInternalAlbpmListenerImpl.xcdl:17)
... 28 more</ns1:stackTrace>
<ns2:hostname xmlns:ns2="http://xml.apache.org/axis/">D-113014550</ns2:hostname>
</detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
can anyone explain why this error is coming.?
Edited by: user8937128 on May 19, 2010 6:58 AM -
MII transaction as Web service integration
Hi MII's transaction can be called as WS but it has its own format. We have a system to integrate and this system should call MII's transaction. However the WS interface of the system is inflexible (it cannot be change, but has a very simple structure). So I just want to know any idea how we could change MII in order to adapt to the data structure .
Now, I am able to create the Web Service in SAP and it is now showing the respective class, attribute and methods to execute this web service (web service to call MII transaction).
But when I am calling it from ABAP (a simple Web Dynpro for ABAP method), it is showing me the following error:
Error (id=GET_BUSINESS_SYSTEM_ERROR): An error occurred when determining the business system (LD_ERROR)
Thought this error is coming from ABAP program, but I am sure that this is related to some configuration at SAP level. (Let me inform you that there are two different servers for SAP Web Dynpro ABAP and SAP MII.
Please help.
Thanks in advance.
Maybe you are looking for
-
How to get actual value from LOV list
Like Subject says: How to get actual value from LOV list. Any help will be appreciated. Thanks.
-
[java] notificationManagementAgent is now shutting down. [java] http://xxx.xxx.xxx.xxx:8978 Thu Jun 05 15:21:15 CST 2003 F: ServerNotificationManagement@zyc:8880/JADE java.net.ConnectException: Connection timed out: connect
-
Referencing a single Iphoto Event into Aperture
Hi Everyone, I recently imported my entire iPhoto library into Aperture making sure that 'store files' was set to 'In their current location' so that Aperture would reference from iPhoto. This worked fine. My problem... I recently imported a new batc
-
Another SQL problem..help
Hi all, There are two tables from which I want to select data. one Person (columns: P_ID, name ...so on) and relationship(columns: P_ID, relationship_id I want insert a P_ID and want the P_ID's of their related persons.... I am finding it difficult b
-
Text Member Director bug?
Hi there, Whilst trying to track down what I though was my own bug, I discovered that with Director 8.5's text member charPosToLoc() function I seem to have found a strange anomaly.... 1. Create a text member. Set framing to Adjust To Fit and wordWra