Assemble Web Services from database functions and procedures?
Web Service Assembler can assemble Web services from PL/SQL packages.
Can it be used to assemble Web services directly from functions or procedures?
Thanks,
Jim
Hi,
No, it relies on a package and takes each of the publishable functions and procedures as the web serivce methods.
Have you also tried using JDeveloper? It uses WSA under the covers but gives you a great GUI for selecting and working with your code
rgds
Susan
Similar Messages
-
Problems calling external Web Service from a Java Stored Procedure
I'm using a sample code that I found here about calling external web services from a Java Store Procedure ( Credit Agency Web Service http://www.oracle.com/technology/sample_code/tech/java/jsp/samples/wsclient/Readme.html ) but when I run it ,send this error. I dont know what can I do or what is missing. Please help me. Thanks.
Error: Premature EOF encountered [java.io.EOFException] [SOAPException: faultCode=SOAP-ENV:IOException; msg=Premature EOF encountered; targetException=java.io.EOFException: Premature EOF encountered] at org.apache.soap.SOAPException.(SOAPException.java:77) at oracle.soap.transport.http.OracleSOAPHTTPConnection.send(OracleSOAPHTTPConnection.java:765) at org.apache.soap.rpc.Call.invoke(Call.java:261) at oracle.otnsamples.wsclient.CreditAgencyServiceStub.authorizeCustomer(CreditAgencyServiceStub.java:84) at Products.jspService(Products.jsp:120) at oracle.jsp.runtime.HttpJsp.service(HttpJsp.java:139) at oracle.jsp.runtimev2.JspPageTable.service(JspPageTable.java:349) at oracle.jsp.runtimev2.JspServlet.internalService(JspServlet.java:509) at oracle.jsp.runtimev2.JspServlet.service(JspServlet.java:413) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:795) at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:330) at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:794) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270) at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112) at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192) at java.lang.Thread.run(Thread.java:534)I'm also facing problem in running the example on the page http://www.oracle.com/technology/sample_code/tech/java/jsp/samples/wsclient/Readme.html
I've Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 and Oracle Application Server 10g (10.1.3). When I executed the following command,
loadjava -thin -user sys/password@localhost:1521:oradb -resolve -synonym -verbose -grant public %OC4J_HOME%/webservices/lib/soap.jar %OC4J_HOME%/lib/dms.jar %OC4J_HOME%/jlib/javax-ssl-1_1.jar %ORACLE_HOME%/lib/servlet.jar %OC4J_HOME%/j2ee/home/lib/mail.jar
... mentioned in step 3 under the "Configuring the Application" section on the above link, the process terminates with the following error
The following operations failed
class oracle/net/www/protocol/https/Handler: resolution
class oracle/net/www/protocol/https/HttpsURLConnection: resolution
class oracle/soap/client/ProviderManagerClient: resolution
class oracle/soap/client/ServiceManagerClient: resolution
class oracle/soap/providers/JavaProvider: resolution
class oracle/soap/providers/ejbprov/EntityEJBProvider: resolution
class oracle/soap/providers/ejbprov/StatefulEJBProvider: resolution
class oracle/soap/providers/ejbprov/StatelessEJBProvider: resolution
class oracle/soap/providers/sp/SpProvider: resolution
class oracle/soap/server/http/SOAPServlet: resolution
class oracle/soap/transport/http/OracleSOAPHTTPConnection$1: resolution
class oracle/soap/transport/http/OracleSOAPHTTPConnection: resolution
class org/apache/soap/messaging/Message: resolution
class org/apache/soap/rpc/Call: resolution
class org/apache/soap/rpc/RPCMessage: resolution
class org/apache/soap/rpc/Response: resolution
class javax/net/DefaultServerSocketFactory: creation (createFailed)
class javax/net/DefaultSocketFactory: creation (createFailed)
class javax/net/ServerSocketFactory: creation (createFailed)
class javax/net/SocketFactory: creation (createFailed)
class javax/net/ssl/DefaultSSLServerSocketFactory: creation (createFailed)
class javax/net/ssl/DefaultSSLSocketFactory: creation (createFailed)
class javax/net/ssl/HandshakeCompletedEvent: creation (createFailed)
class javax/net/ssl/HandshakeCompletedListener: creation (createFailed)
class javax/net/ssl/SSLException: creation (createFailed)
class javax/net/ssl/SSLHandshakeException: creation (createFailed)
class javax/net/ssl/SSLKeyException: creation (createFailed)
class javax/net/ssl/SSLPeerUnverifiedException: creation (createFailed)
class javax/net/ssl/SSLProtocolException: creation (createFailed)
class javax/net/ssl/SSLServerSocket: creation (createFailed)
class javax/net/ssl/SSLServerSocketFactory: creation (createFailed)
class javax/net/ssl/SSLSession: creation (createFailed)
class javax/net/ssl/SSLSessionBindingEvent: creation (createFailed)
class javax/net/ssl/SSLSessionBindingListener: creation (createFailed)
class javax/net/ssl/SSLSessionContext: creation (createFailed)
class javax/net/ssl/SSLSocket: creation (createFailed)
class javax/net/ssl/SSLSocketFactory: creation (createFailed)
class javax/security/cert/Certificate: creation (createFailed)
class javax/security/cert/CertificateEncodingException: creation (createFailed)
class javax/security/cert/CertificateException: creation (createFailed)
class javax/security/cert/CertificateExpiredException: creation (createFailed)
class javax/security/cert/CertificateNotYetValidException: creation (createFailed)
class javax/security/cert/CertificateParsingException: creation (createFailed)
class javax/security/cert/X509Certificate: creation (createFailed)
exiting : Failures occurred during processing
I've checked the path to all the jar files.
I tried to run the command again with system/password instead sys/password but then I got the following stacktrace:
The following operations failed
class oracle/net/www/protocol/https/Handler: resolution
class oracle/net/www/protocol/https/HttpsURLConnection: resolution
class oracle/soap/client/ProviderManagerClient: resolution
class oracle/soap/client/ServiceManagerClient: resolution
class oracle/soap/providers/JavaProvider: resolution
class oracle/soap/providers/ejbprov/EntityEJBProvider: resolution
class oracle/soap/providers/ejbprov/StatefulEJBProvider: resolution
class oracle/soap/providers/ejbprov/StatelessEJBProvider: resolution
class oracle/soap/providers/sp/SpProvider: resolution
class oracle/soap/server/http/SOAPServlet: resolution
class oracle/soap/transport/http/OracleSOAPHTTPConnection$1: resolution
class oracle/soap/transport/http/OracleSOAPHTTPConnection: resolution
class org/apache/soap/messaging/Message: resolution
class org/apache/soap/rpc/Call: resolution
class org/apache/soap/rpc/RPCMessage: resolution
class org/apache/soap/rpc/Response: resolution
exiting : Failures occurred during processing
Thanks in advance for any useful help.
- -
Calling Web Service from Database
Hello,
we want to call a Web Service from Database. What will we need or what must we install to do this. We're using a 10g Database.
Best regards ,
GoronjaHello,
This feature is called "Database Web Services Call Out" and documented in:
- Developing a Web Service Client in the Database
Regards
Tugdual Grall -
Have problem when generate Web Service from bapi function
Dear all,
Please kindly help me about generating Web Service from BAPI function, It does not success only this attached function.
I have done so many function without any problems.
I found 1 case that I use specific variable to be an import/ export then, it can't create as well.
As for this one, I try so many changes but I can't success it as well.
This is my function on R/3 4.6C, Dot net connector 2.0, Dot net Frame Work 1.1.
FUNCTION Z_BAPI_ATTACHMENT_CREATE.
""Local interface: Type: Remote-enabled module
*" IMPORTING
*" VALUE(P_BOTYPE) LIKE BORIDENT-OBJTYPE
*" VALUE(P_BO_ID) LIKE BORIDENT-OBJKEY
*" VALUE(P_MSGTYP) LIKE SOFM-DOCTP
*" VALUE(P_DOCTY) LIKE BORIDENT-OBJTYPE
*" VALUE(P_RELTYP) LIKE BRELTYP-RELTYPE
*" VALUE(P_FNAME) LIKE RLGRAP-FILENAME
*" VALUE(P_OBJDES) TYPE SO_OBJ_DES
*" EXPORTING
*" VALUE(RETURNMESSAGE) TYPE CHAR50
INCLUDE : <cntn01>.
P_BOTYPE TYPE BORIDENT-OBJTYPE DEFAULT 'BUS2105'
P_BO_ID TYPE BORIDENT-OBJKEY
P_MSGTYPE TYPE SOFM-DOCTP DEFAULT 'URL'
P_DOCTY TYPE BORIDENT-OBJTYPE DEFAULT 'MESSAGE'
P_RELTYP TYPE BRELTYP-RELTYPE DEFAULT 'ATTA'
P_FNAME TYPE RLGRAP-FILENAME
P_OBJDES TYPE SO_OBJ_DES
TYPES: BEGIN OF ty_message_key,
foltp TYPE so_fol_tp,
folyr TYPE so_fol_yr,
folno TYPE so_fol_no,
doctp TYPE so_doc_tp,
docyr TYPE so_doc_yr,
docno TYPE so_doc_no,
fortp TYPE so_for_tp,
foryr TYPE so_for_yr,
forno TYPE so_for_no,
END OF ty_message_key.
DATA : lv_message_key TYPE ty_message_key.
DATA : lo_message TYPE swc_object.
DATA : lt_doc_content TYPE STANDARD TABLE OF soli-line
WITH HEADER LINE.
First derive the Attachment's ( MESSAGE )document type.
p_docty = 'MESSAGE'.
CASE p_reltyp.
In case of URls
WHEN 'URL'.
p_msgtyp = 'URL'.
In case of Notes / Private Notes
WHEN 'NOTE' OR 'PNOT'.
p_msgtyp = 'RAW'.
WHEN 'ATTA'.
Take given parameter e.g. 'DOC', 'PDF' etc.
P_MSGTYP = 'EXT'.
WHEN OTHERS.
....exit
EXIT.
ENDCASE.
Create an initial instance of BO 'MESSAGE' - to call the
instance-independent method 'Create'.
swc_create_object lo_message 'MESSAGE' lv_message_key.
define container to pass the parameter values to the method call
in next step.
swc_container lt_message_container.
Populate container with parameters for method
swc_set_element lt_message_container 'DOCUMENTTITLE' p_objdes.
swc_set_element lt_message_container 'DOCUMENTLANGU' 'E'.
swc_set_element lt_message_container 'NO_DIALOG' 'X'.
swc_set_element lt_message_container 'DOCUMENTNAME' p_docty.
swc_set_element lt_message_container 'DOCUMENTTYPE' p_msgtyp.
In case of URLs..it should be concatenated with &KEY& in the begining.
CASE p_msgtyp.
WHEN 'URL'.
lt_doc_content = '&KEY&http://www.rmtiwari.com' .
CONCATENATE '&KEY&' p_fname INTO lt_doc_content.
APPEND lt_doc_content.
In case of Notes or Private Notes, get the data from files on appl
server or from wherever(? - remember background).
WHEN 'RAW'.
lt_doc_content = p_fname.
APPEND lt_doc_content.
In case of PC File attachments
WHEN OTHERS.
OPEN DATASET p_fname FOR INPUT IN BINARY MODE.
IF sy-subrc EQ 0.
DO.
READ DATASET p_fname INTO lt_doc_content. "2 of 27
IF sy-subrc EQ 0.
APPEND lt_doc_content.
ELSE.
EXIT.
ENDIF.
ENDDO.
CLOSE DATASET p_fname.
ENDIF.
ENDCASE.
'DocumentContent' is a multi-line element ( itab ).
swc_set_table lt_message_container 'DocumentContent' lt_doc_content.
Size is required in case of File attachments
DATA : lv_doc_size TYPE i.
DATA : l_file_lines TYPE i.
DESCRIBE TABLE lt_doc_content LINES l_file_lines.
READ TABLE lt_doc_content INDEX l_file_lines.
lv_doc_size = ( 255 * ( l_file_lines - 1 ) ) +
STRLEN( lt_doc_content ).
swc_set_element lt_message_container 'DOCUMENTSIZE' lv_doc_size .
Refresh to get the reference of create 'MESSAGE' object for attachment
swc_refresh_object lo_message.
swc_call_method lo_message 'CREATE' lt_message_container.
Get Key of new object
swc_get_object_key lo_message lv_message_key.
Now we have attachment as a business object instance. We can now
attach it to our main business object instance.
Create main BO object_a
data: LO_IS_OBJECT_A type SIBFLPORB. "type SIBFLPORB is unknown, so I
DATA: lo_is_object_a TYPE borident.
lo_is_object_a-objkey = p_bo_id.
lo_is_object_a-objtype = p_botype.
LO_IS_OBJECT_A-CATID = 'BO'.
Create attachment BO object_b
data: LO_IS_OBJECT_B type SIBFLPORB. "type SIBFLPORB is unknown
DATA: lo_is_object_b TYPE borident.
lo_is_object_b-objkey = lv_message_key.
lo_is_object_b-objtype = p_docty.
LO_IS_OBJECT_B-CATID = 'BO'.
*TRY.
*CALL METHOD CL_BINARY_RELATION=>CREATE_LINK
EXPORTING
IS_OBJECT_A = LO_IS_OBJECT_A
IS_OBJECT_B = LO_IS_OBJECT_B
IP_RELTYPE = P_RELTYP.
CALL FUNCTION 'BINARY_RELATION_CREATE'
EXPORTING
obj_rolea = lo_is_object_a
obj_roleb = lo_is_object_b
relationtype = p_reltyp
EXCEPTIONS
OTHERS = 1.
Check if everything OK...who cares!!
COMMIT WORK.
if sy-subrc = 0.
RETURNMESSAGE = 'S-Success'.
else.
RETURNMESSAGE = 'E-Error'.
endif.
ENDFUNCTION.
Thanks in advance,
Benjawan
Edited by: Nitipat Chadchavalpanichaya on Oct 20, 2008 9:02 AMThere is no any error message show up. It just the class
Z_BAPI_ATTACHMENT_CREATE doesn't create autometically as normal. I showed you as below.
That means I can't call class z_bapi_attachment_create.
' <autogenerated>
' This code was generated by a SAP. NET Connector Proxy Generator Version 2.0
' Created at 21/10/2551
' Created from Windows
' Changes to this file may cause incorrect behavior and will be lost if
' the code is regenerated.
' </autogenerated>
Imports System
Imports System.Text
Imports System.Collections
Imports System.ComponentModel
Imports System.Runtime.InteropServices
Imports System.Xml.Serialization
Imports System.Web.Services
Imports System.Web.Services.Description
Imports System.Web.Services.Protocols
Imports SAP.Connector
'@ <summary>
'@ Client SAP proxy class
'@ </summary>
<WebServiceBinding(Name:="dummy.Binding", Namespace:="urn:sap-com:document:sap:rfc:functions")> _
Public Class PRAttachment
Inherits SAPClient
'@ <summary>
'@ Initializes a new PRAttachment.
'@ </summary>
Public Sub New()
End Sub
'@ <summary>
'@ Initializes a new PRAttachment with a new connection based on the specified connection string.
'@ </summary>
'@ <param name="connectionString">A connection string (e.g. RFC or URL) specifying the system where the proxy should connect to.</param>
Public Sub New(ByVal ConnectionString As String)
MyBase.New(ConnectionString)
End Sub
'@ <summary>
'@ Initializes a new PRAttachment and adds it to the given container.
'@ This allows automated connection mananged by VS component designer:
'@ If container is disposed, it will also dispose this SAPClient instance,
'@ which will dispose a contained connection if needed.
'@ </summary>
'@ <param name="Cont">The container where the new SAPClient instance is to be added.</param>
Public Sub New(ByVal Cont As Container)
MyBase.New(Cont)
End Sub
End Class -
HELP!!! Problem of Calling external Web Service from a Java Stored Procedur
1.I read the topic on http://www.oracle.com/technology/sample_code/tech/java/jsp/samples/wsclient/Readme.html about Calling external Web Service from a Java Stored Procedur.
2.After I import .jar to Oracle what is required by the topic,som error occued.
Like: ORA-29521: javax/activation/ActivationDataFlavor class not found,
ORA-29545: badly formed class.
3.These is not enough .jar required on the topic? What can I do for ORA-29545: badly formed class?
Thany you!Try this
Re: HELP! Loading Java Classes into Oracle ERROR -
Call bpel process as Web service from database
Hi!
i'm trying tocall bpel process as web service from Oracle database. When i try the same pl sql function, i can successfully call regular j2ee web service without any problem. When i instantiate process from bpel console - everything is ok .. but when i call process from plsql function, i get this error:
ORA-20000: soapenv:Server.generalException - Missing BPEL archive file.
The process domain cannot locate the BPEL archive for process
"AuthorizeKeyCode", revision "AuthorizeKeyCode".
If you have deployed the process please check that it is located in the
directory "/ora/bpelpm/integration/orabpel/domains/vinves/deploy".
; nested exception is:
ORABPEL-05205
Missing BPEL archive file.
The process domain cannot locate the BPEL archive for process
"AuthorizeKeyCode", revision "AuthorizeKeyCode".
If you have deployed the process please check that it is located in the
directory "/ora/bpelpm/integration/orabpel/domains/vinves/deploy".
i tried undeploy and deploy the process again, i tried to restart the server - still the same problem...
anyone can help, please?
thanks ...
TomasHi,
I am trying to invoke the HelloWorld BPEL process from Oracle DB using the demo_soap package downloaded from oracle.com.
Find the PL/SQL block below:
DECLARE
req Demo_Soap.request;
resp Demo_Soap.response;
zipcode VARCHAR2(100) := 'Suresh';
BEGIN
req := Demo_Soap.new_request('initiate',
'xmlns="http://xmlns.oracle.com/HelloWorld"');
Demo_Soap.add_parameter(req, 'HelloWorldProcessRequest', 'xsd:string', zipcode);
resp := Demo_Soap.invoke(req,
'http://nooslux037t.gl.2wglobal.com:7777/BPELConsole/Dev/displayProcess.jsp?processId=HelloWorld',
'http://xmlns.oracle.com/HelloWorld');
END;
Please help me in knowing what value i should pass for the
1. New_request procedure
2. Add_parameter procedure
3. Invoke procedure.
The HelloWorld is same as the example in the BPEL Tutorial Session 1.
Thanks for your time. -
Error while generating Web Service from a function module.
Hi Experts,
I am trying to create a web service from function module by doing the steps as mentioned in the below document:
http://www.sdn.sap.com/irj/scn/index;jsessionid=(J2EE3417800)ID1146834250DB10778842957931285337End?rid=/library/uuid/80fa3dff-ce76-2a10-3f94-f3df8f2db5a2&overridelayout=true
When i save it as an local object instead of generating the Web Service it gives me the below error:
"Error during activation of Web Service"
Kindly let me know what needs to be done inorder to resolve this issue.
I have a feeling that this error may be with respect to some authorizations, in that case how do we resolve it
Helpful Inputs Awaited.!!!
Thanks
DhwaniHi Dhawani,
Hi Pavan,
Can you please elaborate...how this will help??
Thanks
Dhwani
I dont know the specific reason but internally there may some inconsistancy but i faced the same error and i tried with saving it in the package.
Thanks -
Error received when calling web service from database.
Hi folks,
I am trying to call a web service from the database (using the Oracle database web services call-out utility) and I am getting the following error:
ERROR at line 1:
ORA-29532: Java call terminated by uncaught Java exception:
java.rmi.RemoteException:
oracle.j2ee.ws.common.encoding.DeserializationException:unknown prefix in QName
literal: null
ORA-06512: at "SCOTT.PENALTY_ALG_WS_WRAPPER", line 1
ORA-06512: at "SCOTT.ABC_PROC", line 131
ORA-06512: at line 1
This is the error I see in the trace file on the database:
*** 2009-11-10 11:30:37.353
java.rmi.RemoteException: oracle.j2ee.ws.common.encoding.DeserializationException:unknown prefix in QName literal: null
at oracle.j2ee.ws.common.encoding.simpletype.XSDQNameEncoder.stringToObject(XSDQNameEncoder.java:75)
at oracle.j2ee.ws.common.encoding.SimpleTypeSerializer.deserialize(SimpleTypeSerializer.java:141)
at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserializeSOAP11(SOAPFaultInfoSerializer.java:120)
at oracle.j2ee.ws.common.encoding.SOAPFaultInfoSerializer.doDeserialize(SOAPFaultInfoSerializer.java:94)
at oracle.j2ee.ws.common.encoding.ObjectSerializerBase.deserialize(ObjectSerializerBase.java:180)
at oracle.j2ee.ws.client.StreamingSender._readBodyFaultElement(StreamingSender.java:513)
at oracle.j2ee.ws.client.StreamingSender._sendImpl(StreamingSender.java:321)
at oracle.j2ee.ws.client.StreamingSender._send(StreamingSender.java:112)
at genproxy.runtime.PenaltyAlgBPELProcessBinding_Stub.process(genproxy.runtime.PenaltyAlgBPELProcessBinding_Stub:80)
at genproxy.PenaltyAlgBPELProcessPortClient.process(PenaltyAlgBPELProcessPortClient.java:40)
at genproxy.PenaltyAlgBPELProcessPortClientJPub.process(PenaltyAlgBPELProcessPortClientJPub.java:46)
This web service is deployed on Oracle app server 10.1.3.4. It calls a BPEL process which in turn calls Oracle Business Rules.
I used JPublisher to create the stubs for the web service and load them into the database.
Any ideas on what might be causing this error?
Thanks.
KashifWell, I think so... I've followed all the steps, and my merged WSDL file seems like the one in page 12...
Any suggestion, please?
Thank you, -
Web Service from RFC function module
Hi all,
I'm searching for a way to create web services from RFC-enabled function modules. I know there is a wizard, but it's not suitable for my problem:
I have around 30 function modules (number raising in near future) I want to enable for web services, most of them share the same structures representing the underlying data model. When one structure is modified (i.e. a new sub-structure is added) I have to recreate all web services, which is quite uncomfortable.
In addition, using the wizard results in one wsdl-file for each web service operation, that leads to an administration overhead using this web services from a java frontend.
So I'm searching for a "bulk creation". I also know the wizard can be used for a function group, but I can't put all my RFC-enabled function module in one function group, that would lead to confusion in the package.
Does anyone know how web services are created programmaticaly? If I had a function module which creates the web services I could write a function module which creates all web services I need.
Thank you in anticipation!
FlorianI'm not sure I understand the 're-create' part...how are you re-creating the web service? if you modify the interface of a function-based web service, then you use the 'modify operations' functionality (context menu - right-click) to regenerate the web service interface; this works for a function group based web service as well and hits all of the methods at once. As for the java overhead on function group services, stating the obvious, maybe you just need to lower the number of functions in your groups. We use .Net-developed applications with multi-function webservices and don't have any overhead issues.
-
Web Services from ABAP function modules return values- leading zeros
I am using several web services from SAP CRM (5.0) that were created from Function modules ( I am assuming that that they are in ABAP).
I can call the web services fine and they work as expected, but I am seeing a lot of leading zeros in the return values of fields in tables from the Web service.
The ABAP ers are telling me that they cannot see the leading zeros.
So my question is where these are appended to the values in the whole process. When I execute the Function Module in SAP CRM from transaction SE37 I can see the leading zeros. So I think that this is something that has to be handled by the ABAP ers and not in the client consuming the web service.
Are the functions in SAP CRM that can remove leading zeros for fields in a table (that is an export parameter?)
JawaharHello Jawahar
If you run your (RFC-enabled) function modules using the SAP-GUI (i.e. in dialog) then the GUI automatically replaces leading zero when the function module returns any data. However, calling the same function module remotely you will always see these leading zeros.
These so-called conversion exits are defined as attribute of domains in the ABAP dictionary. If the function module used for the WebService is a standard fm then you have little chances to get rid of the leading zero. Perhaps the WebService has some attribute to suppress conversion exits or activate them when retrieving the data.
Regards,
Uwe -
Create a web service from java bean and map exceptions to SOAP faults
Hi,
We have to expose our Session stateless EJB3 as web services. I've tried to use annotations and jdev wizard "java bean to web service" and it works fine.
Our problem now is that our methods can throw a business exception that contains a list of error message strings to be presented on the client.
I did not find any way to use annotations to make it build a wsdl with soap fault mapped to our exception class. Neither I could to make the wizard to create wsdl with faults.
As we are exposing already designed and implemented classes as web services, I think the bottom-top (java->wsdl) approach is better that top->botton (wsdl->java). Therefore, I'm looking for a possibility to generate the web services from the java beans and have the exception be mapped to a soap fault message.
We are using jdev 10.1.3.1 and OAS 10.1.3.1., is there a way to map exceptions to soap faults using bottom->top approach?
thank youA couple of links that may be of help:
http://www.netbeans.org/servlets/ReadMsg?listName=nbj2ee&msgNo=1218
My last question concerning web services:
I have already written a session bean and I'd like to add some methods
as a web service to it, how do I do that?
Or I can only create another bean for a webservice and cannot modify the
original one?You might create web service with existing sources and select you bean. New web services with appropriate lookup method will be generated.
All web service method, that will be exposed in web service, you
should add itself (Pop-up menu Web Service -> Add operation)
http://usersguide.netbeans.org/files/documents/40/73/Chapter9-WebServices.pdf -
Hi,
I have been successfull in Publishing Web Service using SQL (DML) using :
1. Oracle Express Db 10.2
2. OC4J 10.1.3
Any Help Will be appreciated........ :)
NOTE: Oracle Documentation on Application Server SUCKS (Too Many Errors prints and Wrong Information in the Web Servises area including JAR file paths)
I can only use One parameter in the QUERY and a Second Parameter gives an Error.
java -jar ${ORACLE_HOME}/webservices/lib/wsa.jar -sqlAssemble -appName query -dataSource jdbc/OracleCoreDS -sqlstatement "updtProdTyp=update PRODUCT_TYPES SET NAME = :{newname VARCHAR} where NAME = :{oldname VARCHAR}" -dbConnection jdbc:oracle:thin:@localhost:1521:XE -dbUser store/store
INFO: [WSADBPlugin] endpoint setInterface: oracle.generated.SqlStmts, setImplementation: oracle.generated.SqlStmtsUser
INFO: java oracle.jpub.Doit -user=store/store -url=jdbc:oracle:thin:@localhost:1521:XE -dir=./src/server -codegen=jdbc -style=oracle/j2ee/ws/tools/wsa/db/webservices-common -style=oracle/j2ee/ws/tools/wsa/db/webservices10 -style=oracle/j2ee/ws/tools/wsa/db/webservices10literal -outarguments=return -datasource=jdbc/OracleCoreDS -sqlstatement.updtProdTyp=update PRODUCT_TYPES SET NAME = :{newname VARCHAR} where NAME = :{oldname VARCHAR} -sqlstatement.class=SqlStmts -package=oracle.generated -plsqlfile=SqlStmts_plsql_wrapper.sql,SqlStmts_plsql_dropper.sql -plsqlpackage=SqlStmts_plsql_wrapper -connscope=method -sqlj -d=./war/WEB-INF/classes -C-g
INFO: SqlStmtsBase
/usr/lib/oracle/xe/app/OC4J/D_My_Apps/src/server/oracle/generated/SqlStmtsUser.java:8: oracle.generated.SqlStmtsUser is not abstract and does not override abstract method updtProdTypiSS(java.lang.String[],java.lang.String[]) in oracle.generated.SqlStmts
public class SqlStmtsUser extends SqlStmtsBase implements SqlStmts, java.rmi.Remote
^
/usr/lib/oracle/xe/app/OC4J/D_My_Apps/src/server/oracle/generated/SqlStmtsUser.java:22: cannot find symbol
symbol : method _getProdTypBeans(java.lang.String,java.sql.Connection)
location: class oracle.generated.SqlStmtsBase
__jRt_0 = super._getProdTypBeans(__jRt_2, __onnScopeMethod);
/usr/lib/oracle/xe/app/OC4J/D_My_Apps/src/server/oracle/generated/SqlStmtsUser.java:85: cannot find symbol
symbol : method _getProdTyp(java.lang.String,java.sql.Connection)
location: class oracle.generated.SqlStmtsBase
__jRt_0 = super._getProdTyp(__jRt_8, __onnScopeMethod);
^
/usr/lib/oracle/xe/app/OC4J/D_My_Apps/src/server/oracle/generated/SqlStmtsUser.java:128: _updtProdTyp(java.lang.String,java.lang.String,java.sql.Connection) in oracle.generated.SqlStmtsBase cannot be applied to (java.lang.String,java.sql.Connection)
__jRt_0 = super._updtProdTyp(__jRt_10, __onnScopeMethod);
^
/usr/lib/oracle/xe/app/OC4J/D_My_Apps/src/server/oracle/generated/SqlStmtsUser.java:145: cannot find symbol
symbol : method _updtProdTypiS(java.lang.String[],java.sql.Connection)
location: class oracle.generated.SqlStmtsBase
__jRt_0 = super._updtProdTypiS(__jRt_12, __onnScopeMethod);
^
6 errors
INFO: NEW DBWS runtimeProperties set databaseJndiName: jdbc/OracleCoreDS
INFO: User classpath is :/usr/lib/oracle/xe/app/OC4J/D_My_Apps/./war/WEB-INF/classes
INFO: Checking for JSR-181 Annotations capabilities in current JVM...
INFO: Found JSR-181 Annotations capabilities. Checking for JSR-181 Annotations Processor...
INFO: Found JSR-181 Annotations processor. JSR-181 Annotations (if any) will be processed
INFO: No JSR-181 annotations found in specified class oracle.generated.SqlStmtsUser
FINE: ValueTypeModeler.log [creating model: query]
FINE: ValueTypeModeler.log [creating port: oracle.generated.SqlStmts]
FINE: MethodModeler.log [creating operation: updtProdTyp]
FINE: MethodModeler.log [creating operation: updtProdTypiSS]
WARNING: Problem validating implementation class. Access modifier problem detected for the implementation class oracle.generated.SqlStmtsUser: int updtProdTyp( java.lang.String, java.lang.String ) is defined with access modifiers that make it an unsuitable implementation of the interface method: The method cannot be 'abstract'.
Thu Mar 30 14:17:34
Thanks
====================================I don't have the problem with the second arugument, using essentially the same command as yours. Could you make sure you clean up the following subdirectories and retry:
ear query.ear src war
My guess is that the leftover subdirectories in your previous run are playing game with you. You can simplify leftover management by specifying -output setting. -
Creating A Web Service from a Function Module in ERP2004
I have searched for documentation on this without success.
I would be grateful if anyone could point me in the direction of any documentation on this subject, how to do it and what infrastructure needs to be in place for it to work.
Many Thanks
DavidWAS640 makes the creation and consumption of web services very easy. Here is a help document to give you a step-by-step of how to create a web service in ABAP.
http://help.sap.com/saphelp_nw2004s/helpdata/en/37/01a7408f031414e10000000a1550b0/frameset.htm
Hope this helps.
Sudha -
How to compile and deploy JAX-WS web service from commandline (!) ?
I have read a couple of tutorials about how to create and deploy web services with
certain IDEs (e.g. Eclipse).
But I found no guide on how to compile a java web service source from command line !!
Lets say I have a java source class with annotations inside (like "@WebMethod").
How do I generate with the built-in j2ee v5 tools from a web service from command line and deploy it e.g. to TomCat or JBoss ?
Is there somewhere such a simple step-by-step intro?
Thx
PeterYou can download JWSDP 2.0 from sun and install it. Under jaxws (the installed directory) you can find sample directory which has build.xml can be run from command prompt using ant. if you want in detail means go through the build.xml and use wsgen.bat or wsimport under the bin directory of jaxws
Edited by: Muyallu_Bala on Apr 14, 2008 5:49 AM -
Errors calling oracle web service from pl/sql
Oracle application server version 10.1.2.2.0
Jdeveloper version 10.1.2.1.0
I have published a function of an oracle database package as a web service using jdeveloper by creating a connection to my database and right clicking on the package and selecting publish as a web service. I accepted all the defaults and deployed the web service to my application server also using jdeveloper. I have been able to invoke the web service from the url which was generated.
I now want to invoke this web service from another pl/sql procedure in the same database as the function I've published as a web service using the utl_dbws facility but get the following error
ORA-29532: Java call terminated by uncaught Java exception: javax.xml.rpc.soap.SOAPFaultException: No Deserializer found to deserialize a 'http://fujibox09/FinalTestWS-Project-context-root/FinalTestWS/:p_group_id' using encoding style 'null'. [java.lang.IllegalArgumentException]
I have amended the wsdl to look like this
<?xml version = '1.0' encoding = 'UTF-8'?>
<!--Generated by the Oracle JDeveloper 10g Web Services WSDL Generator-->
<!--Date Created: Tue Sep 29 12:32:20 BST 2009-->
<wsdl:definitions xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://fujibox09/FinalTestWS-Project-context-root/FinalTestWS/"
xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
targetNamespace="http://fujibox09/FinalTestWS-Project-context-root/FinalTestWS/"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<wsdl:types>
<s:schema elementFormDefault="qualified"
targetNamespace="http://fujibox09/FinalTestWS-Project-context-root/FinalTestWS/">
<s:element name="totalliveusers">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="p_group_id" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="totalliveusersResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="totalliveusersResult" type="s:int"/>
<s:element minOccurs="0" maxOccurs="1" name="p_group_desc" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</wsdl:types>
<wsdl:message name="totalliveusersSoapIn">
<wsdl:part name="parameters" element="tns:totalliveusers"/>
</wsdl:message>
<wsdl:message name="totalliveusersSoapOut">
<wsdl:part name="parameters" element="tns:totalliveusersResponse"/>
</wsdl:message>
<wsdl:portType name="totalliveusersSoap">
<wsdl:operation name="totalliveusers">
<wsdl:input message="tns:totalliveusersSoapIn"/>
<wsdl:output message="tns:totalliveusersSoapOut"/>
</wsdl:operation>
</wsdl:portType>
<wsdl:binding name="totalliveusersSoap" type="tns:totalliveusersSoap">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:operation name="totalliveusers">
<soap:operation
soapAction="http://fujibox09/FinalTestWS-Project-context-root/FinalTestWS/totalliveusers"
style="document"/>
<wsdl:input>
<soap:body use="literal"/>
</wsdl:input>
<wsdl:output>
<soap:body use="literal"/>
</wsdl:output>
</wsdl:operation>
</wsdl:binding>
<wsdl:service name="totalliveusers">
<wsdl:port name="totalliveusersSoap" binding="tns:totalliveusersSoap">
<soap:address location="http://fujibox09/FinalTestWS-Project-context-root/FinalTestWS"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
The function has an in varchar2 parameter and an out varchar2 parameter and returns a number
Can anyone help?Hi,
On way we can call a web service is to pass the Web Service URL to UTL_HTTP package:
Sample Web Service URL
===================
lv_url :=
'http://67.97.189.151:8888/plsqlsample/dbfunc?invoke=placeOrder'
|| '&'
|| 'param0=1'
|| '&'
|| 'param1=1'
|| '&'
|| 'param2=1';
Sample Call using UTL_HTTP
=====================
SELECT UTL_HTTP.request (lv_url)
INTO lv_result
FROM DUAL;
Thank you.
Regards,
Balu
Maybe you are looking for
-
A few days after i've updated to iOS 8.1.1 my iphone 5s died and isn't turning on and its not charging. i have my legit charger that came with my phone and after 6 months it stopped working, i even have a charging case and that wont charge it. I goog
-
While trying to burn a DVD off IMovie 09 I get the following message: Unable to prepare project for publishing because an error occurred (-2125) Happened several times even after deleting and starting over.
-
Hello guys, I have done the offline transport of km data, and as the SAP documentation says only ACL's get transported. The problem is the we are not getting the collaboration tab in folder or document details property. We are only gettin
-
My Charger Isnt Working . Any Reasons Why?
Okay.. So I Went To Charge My iPhone 5 And For Some Reason It Wont Charge.. And im Scared Im Gonna Have To Buy A New One .
-
Assign house bank to Customer item - LOANS - FNM1
Hi Guys. In Loans, when I use FNM1, is it possible to assign the "House bank" in the customer posting item? There is payment details in Loans but this payment detail is only when I'm not using customers. My doubt is when I'm using customer. Is it po