FlexBuilder Generated Web Service Stubs and requestTimeout
I generated webservice stubs from a WSDL using Flexbuilder and during an operation I would like the request to timeout after a certain amount of time (say 5 seconds). How would I get the generated web service stub to generate a timeout fault? I tried setting the requestTimeout property in the autogenerated BaseService class, but it seems to have no effect
Can you point me to any documentation that gives more information about this ? Because I came across a scenerio's once wher if I provide Ties it will accept them and it will not re-create them .........
Both are tow scenerio with "server" = true option :
Here's when it won't do it :
If I run wscompile on a config file that provide's "service" tag and include all those ties generated in deployement file it won't re-create the ties.
Bur here's when it will :
If I run wscompile on config file that provides "wsdllocation" tag and than include those genertaed files in the deployement than it will re-create the ties again .
Any idea about that ?
Prashant
Similar Messages
-
OER: Generate Web Service Proxy REX in JDeveloper
Hi,
I want to generate a Web Service Proxy for REX (OER version 11.1.1.5.0) using JDeveloper 11.1.1.5.0. I am using JAX-RPC Weblogic Style. When I start the Web Service Proxy Generator it fails with the following error:
"The WSDL document contains the following errors:
Operation "assetTypeTabsRead" and "assetTabApprove" have conflicting SOAPAction avlues. Do not overload any operation or given unique SOAPAction value to each operation binding.
And many more (42481) ...."
I am looking for the correct way to generate a Service Proxy foor REX and JDeveloper. Any help is appreciated.
Best regards,
Sjoerd
Edited by: Sjoerd Aalbers on Dec 11, 2011 2:18 PM'Generate Web Service Stub/Skeleton' option in 10.1.2, was replaced by 'Generate Web Service Proxy' in 10.1.3
-
XML Schema mapping error when generating web service
I have created a method in java that returns an array of an object type (a user defined class). When tried to generate a web service JDeveloper did not allow me to select the method, giving the following "Why not.." explanation: "One or more parameters did not have an XML Schema mapping and/or serializer specified".
Can anyone help me in this?
Thanks
AlinaThanks Mike for your advice it did work when I changed the setters and getters names, and managed to create a web service with Apache Soap profile. I created the client stub and client application to run the web service but it keep coming with soap-env error messages.
Error message I get when running the client side:
F:\JDev9i-0-3\jdk\bin\javaw.exe -ojvm -classpath F:\JDev9i-0-3\jdev\mywork\OrbatListArray\OrbatClient\classes;F:\JDev9i-0-3\jdev\lib\jdev-rt.jar;F:\JDev9i-0-3\jdev\lib\jdev-rt.jar;F:\JDev9i-0-3\soap\lib\soap.jar;F:\JDev9i-0-3\lib\xmlparserv2.jar;F:\JDev9i-0-3\jlib\javax-ssl-1_2.jar;F:\JDev9i-0-3\jlib\jssl-1_2.jar;F:\JDev9i-0-3\j2ee\home\lib\activation.jar;F:\JDev9i-0-3\j2ee\home\lib\mail.jar;F:\JDev9i-0-3\j2ee\home\lib\http_client.jar orbatclientpackage.OrbatListArrayClient
[SOAPException: faultCode=SOAP-ENV:Server.BadTargetObjectURI; msg=Unable to resolve target object(orbatlistarraypackage.OrbatListArray): orbatlistarraypackage.OrbatListArray [java.lang.ClassNotFoundException]] orbatlistarraypackage.OrbatType[] orbatclientpackage.OrbatListArrayStub.getOrbatListArray() OrbatListArrayStub.java:63 void orbatclientpackage.OrbatListArrayClient.main(java.lang.String[]) OrbatListArrayClient.java:19Exception in thread main
Process exited with exit code 1.
My wsdl file is:
<?xml version = '1.0' encoding = 'windows-1252'?>
<!--Generated by the Oracle9i JDeveloper Web Services WSDL Generator-->
<!--Date Created: Wed Oct 23 11:16:29 BST 2002-->
<definitions
name="OrbatListArray"
targetNamespace="http://orbatlistarraypackage/OrbatListArray.wsdl"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:tns="http://orbatlistarraypackage/OrbatListArray.wsdl"
xmlns:ns1="http://orbatlistarraypackage/IOrbatListArray.xsd">
<types>
<schema
targetNamespace="http://orbatlistarraypackage/IOrbatListArray.xsd"
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
<complexType name="ArrayOfOrbatType" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
<complexContent>
<restriction base="SOAP-ENC:Array">
<attribute ref="SOAP-ENC:arrayType" wsdl:arrayType="ns1:orbatlistarraypackage_OrbatType[]"/>
</restriction>
</complexContent>
</complexType>
<complexType name="orbatlistarraypackage_OrbatType" jdev:packageName="orbatlistarraypackage" xmlns:jdev="http://xmlns.oracle.com/jdeveloper/webservices">
<all>
<element name="OrbatName" type="string"/>
<element name="OrbatID" type="int"/>
</all>
</complexType>
</schema>
</types>
<message name="getOrbatListArray0Request"/>
<message name="getOrbatListArray0Response">
<part name="return" type="ns1:ArrayOfOrbatType"/>
</message>
<portType name="OrbatListArrayPortType">
<operation name="getOrbatListArray">
<input name="getOrbatListArray0Request" message="tns:getOrbatListArray0Request"/>
<output name="getOrbatListArray0Response" message="tns:getOrbatListArray0Response"/>
</operation>
</portType>
<binding name="OrbatListArrayBinding" type="tns:OrbatListArrayPortType">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="getOrbatListArray">
<soap:operation soapAction="" style="rpc"/>
<input name="getOrbatListArray0Request">
<soap:body use="encoded" namespace="orbatlistarraypackage.OrbatListArray" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</input>
<output name="getOrbatListArray0Response">
<soap:body use="encoded" namespace="orbatlistarraypackage.OrbatListArray" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
</output>
</operation>
</binding>
<service name="OrbatListArray">
<port name="OrbatListArrayPort" binding="tns:OrbatListArrayBinding">
<soap:address location="http://192.9.200.200:8888/soap/servlet/soaprouter"/>
</port>
</service>
</definitions>
My OrbatListArrayDescriptor.dd file:
<?xml version = '1.0' encoding = 'windows-1252'?>
<!--Generated by the Oracle9i JDeveloper Web Services Deployment Descriptor Generator-->
<!--This Deployment Descriptor file is for use with the Oracle9iAS Release 2 / Apache 2.2 SOAP Server SOAP Server-->
<!--Date Created: Wed Oct 23 11:16:29 BST 2002-->
<isd:service
id="orbatlistarraypackage.OrbatListArray"
xmlns:isd="http://xml.apache.org/xml-soap/deployment">
<isd:provider
type="java"
methods="getOrbatListArray"
scope="Request">
<isd:java class="orbatlistarraypackage.OrbatListArray" static="false"/>
</isd:provider>
<isd:faultListener>org.apache.soap.server.DOMFaultListener</isd:faultListener>
</isd:service>
My Client Web Service Stub class file:
package orbatclientpackage;
import oracle.soap.transport.http.OracleSOAPHTTPConnection;
import org.apache.soap.encoding.soapenc.BeanSerializer;
import org.apache.soap.encoding.SOAPMappingRegistry;
import org.apache.soap.util.xml.QName;
import java.net.URL;
import org.apache.soap.Constants;
import org.apache.soap.Fault;
import org.apache.soap.SOAPException;
import org.apache.soap.rpc.Call;
import org.apache.soap.rpc.Parameter;
import org.apache.soap.rpc.Response;
import java.util.Vector;
import orbatlistarraypackage.OrbatType;
import java.util.Properties;
* Generated by the Oracle9i JDeveloper Web Services Stub/Skeleton Generator.
* Date Created: Wed Oct 23 11:19:42 BST 2002
* WSDL URL: file:/F:/JDev9i-0-3/jdev/mywork/OrbatListArray/OrbatListArrayProject/src/orbatlistarraypackage/OrbatListArray.wsdl
public class OrbatListArrayStub
public OrbatListArrayStub()
m_httpConnection = new OracleSOAPHTTPConnection();
m_smr = new SOAPMappingRegistry();
BeanSerializer beanSer = new BeanSerializer();
m_smr.mapTypes(Constants.NS_URI_SOAP_ENC, new QName("http://orbatlistarraypackage/IOrbatListArray.xsd", "orbatlistarraypackage_OrbatType"), orbatlistarraypackage.OrbatType.class, beanSer, beanSer);
public String endpoint = "http://192.9.200.200:8888/soap/servlet/soaprouter";
private OracleSOAPHTTPConnection m_httpConnection = null;
private SOAPMappingRegistry m_smr = null;
public OrbatType[] getOrbatListArray() throws Exception
OrbatType[] returnVal = null;
URL endpointURL = new URL(endpoint);
Call call = new Call();
call.setSOAPTransport(m_httpConnection);
call.setTargetObjectURI("orbatlistarraypackage.OrbatListArray");
call.setMethodName("getOrbatListArray");
call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);
Vector params = new Vector();
call.setParams(params);
call.setSOAPMappingRegistry(m_smr);
Response response = call.invoke(endpointURL, "");
if (!response.generatedFault())
Parameter result = response.getReturnValue();
returnVal = (OrbatType[])result.getValue();
else
Fault fault = response.getFault();
throw new SOAPException(fault.getFaultCode(), fault.getFaultString());
return returnVal;
public void setMaintainSession(boolean maintainSession)
m_httpConnection.setMaintainSession(maintainSession);
public boolean getMaintainSession()
return m_httpConnection.getMaintainSession();
public void setTransportProperties(Properties props)
m_httpConnection.setProperties(props);
public Properties getTransportProperties()
return m_httpConnection.getProperties();
My Client application main file:
package orbatclientpackage;
import java.io.*;
public class OrbatListArrayClient
public OrbatListArrayClient()
public static void main(String[] args) throws Exception
OrbatListArrayStub s = new OrbatListArrayStub();
// File xmlFile;
// BufferedWriter in;
// xmlFile = new File("f:\\OrbatSoap", "OrbatXMLList.xml");
// PrintWriter out = new PrintWriter(new BufferedWriter(new FileWriter(xmlFile)));
// out.println(s.getOrbatListArray());
// out.flush();
System.out.println(s.getOrbatListArray());
When I deployed it to jar I copied the jar file in the following directory:
<jdevloper home>\soap\webapps\soap\soap\Web-inf\lib\
I then tried and created a client stub in the same package using JDeveloper 9.0.3 wizard for creating sample java client and added a line to call my getOrbatListArray method and print it to the screen. I get another soap error message, saying:
F:\JDev9i-0-3\jdk\bin\javaw.exe -ojvm -classpath F:\JDev9i-0-3\jdev\mywork\OrbatListArray\OrbatListArrayProject\classes;F:\JDev9i-0-3\jdev\lib\jdev-rt.jar;F:\JDev9i-0-3\jdbc\lib\classes12.jar;F:\JDev9i-0-3\jdbc\lib\nls_charset12.jar;F:\JDev9i-0-3\rdbms\jlib\xsu12.jar;F:\JDev9i-0-3\lib\xmlparserv2.jar;F:\JDev9i-0-3\lib\xmlcomp.jar;F:\JDev9i-0-3\jdev\lib\jdev-rt.jar;F:\JDev9i-0-3\soap\lib\soap.jar;F:\JDev9i-0-3\lib\xmlparserv2.jar;F:\JDev9i-0-3\jlib\javax-ssl-1_2.jar;F:\JDev9i-0-3\jlib\jssl-1_2.jar;F:\JDev9i-0-3\j2ee\home\lib\activation.jar;F:\JDev9i-0-3\j2ee\home\lib\mail.jar;F:\JDev9i-0-3\j2ee\home\lib\http_client.jar orbatlistarraypackage.EmbeddedOrbatListArrayStub
[SOAPException: faultCode=SOAP-ENV:IOException; msg=Connection refused: connect; targetException=java.net.ConnectException: Connection refused: connect] void org.apache.soap.SOAPException.<init>(java.lang.String, java.lang.String, java.lang.Throwable) SOAPException.java:77 void oracle.soap.transport.http.OracleSOAPHTTPConnection.send(java.net.URL, java.lang.String, java.util.Hashtable, org.apache.soap.Envelope, org.apache.soap.encoding.SOAPMappingRegistry, org.apache.soap.rpc.SOAPContext) OracleSOAPHTTPConnection.java:765 org.apache.soap.rpc.Response org.apache.soap.rpc.Call.invoke(java.net.URL, java.lang.String) Call.java:253 orbatlistarraypackage.OrbatType1[] orbatlistarraypackage.EmbeddedOrbatListArrayStub.getOrbatListArray() EmbeddedOrbatListArrayStub.java:70 void orbatlistarraypackage.EmbeddedOrbatListArrayStub.main(java.lang.String[]) EmbeddedOrbatListArrayStub.java:38Process exited with exit code 0.
Sorry for the length of this message, but I am getting desparate.
Thanks again for all you help
Alina -
Using Oracle AS Web Services stub in portlet?
I have built a portlet using the jdeveloper plugin wizard, and added a web service stub using the jdeveloper wizard for that. I have added no other code to the portlet than the stub. When running the portlet the classloader throws an class format exception. When using the same stub in a standalone application it runs fine. The libraries mentioned in jdevelopers under the system library "Oracle SOAP" has all been added to the webapplication web-inf/lib. How do I fix it?
(coworker)
We have solved the problem. It turned out that the auto generated stub contained code not compatible with the OC4J class loader (but compatible with normakl JVM classload). By modifying the stub a little we got it working. Here is the an extract from one method in the stub. The two line that work comes first and the two next lines contains the auto generated code
public Integer dispatchFile(byte[] fileContent, Integer programID) throws Exception {
params.addElement(new Parameter("fileContent", fileContent.getClass(), fileContent, null));
params.addElement(new Parameter("programID", programID.getClass(), programID, null));
// params.addElement(new Parameter("fileContent", byte[].class, fileContent, null));
// params.addElement(new Parameter("programID", Integer.class, programID, null));
The two original lines compiles into some static class members and a static method that fails to load.
The new code does not produce any static content.
We consider this behaviour to be an OC4J error. -
Access user inside of web service stub (or web service)
i am trying to access the current portal user from inside a web service and/or a web service stub. (note, ws is generated using xslt)...
i found in an otn document (http://portalstudio.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/articles/understanding.web.services.for.portlets.html) the following:
*** begin
By using information specified in the XML provider definition (provider.xml), the renderers allow inputs to a web service to be "wired up" declaratively to any of the following sources of information.
Portlet render request parameters, such as the username, locale and authentication level
*** end
it continues, but the above section seems relevant to me. it indicates that i should be able to get this information to my web service (through the renderer???). can someone please explain how? are there examples of this?
thank you very much.
chrisfound it...
http://portalcenter.oracle.com/pls/ops/docs/FOLDER/COMMUNITY/PDK/ARTICLES/HOW.TO.BUILD.WEB.SERVICES.PORTLETS.HTML -
Error generating Web service /BIC/CQZDS_WEB00001000 how to over come this?
HI,
Experts,
I have created Web service source system by taking: target system BI and source system XI.
After creation of Info objects i have created data source in RSA1 there will no error displayed while CHECK but while activating the data source it was displaying errors like:
1) Error generating Web service /BIC/CQZDS_WEB00001000
2) Error when activating DataSource ZDS_WEBSERVICE BIDCLNT100
what will be the reason for this error plezase provide me good idea or provide step by step web service scenarious.
Thank you,
Shabeer Ahmed.Hi
Web AS 6.40 you can create a Web Service Proxy directly in Transaction SE80. Create a new package and right click on it. Choose Create -> Enterprise service / Web service -> Proxy object. Now you can choose how you want to provide the WSDL Source.
https://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/80fa3dff-ce76-2a10-3f94-f3df8f2db5a2 -
Problem generating Web Service with business methods in multiple EJB's
Hi,
I'm I a "web service novice" but I'm working with an
application which was developed in an earlier version
of Studio which has
~30 business method coming from ~12 EJB's. When I attempt
to recreate the Web Service in Java Studio Enterprise 7 (had same problem versions 5 and 6) I have trouble. When I execute the "Generate Web Service Files" command I get complilation errors in the <webservice_name>.java file. It is obvious that the
protected Map theJNDIMap = makeJNDIMap();
protected Map makeJNDIMap() {
Map m = new HashMap();
// This map might get changed at deployment time
m.put(......
is all screwed up. Entries are missing and the closing bracket isn't even there.
Is there some user error on my part?
Is this a know bug (I couldn't any info. and I get the same behavior on the current and older versions of Studio)?
Is there a workaround? I can fix this particular java file and compile it sucessfully. However, I'm still missing many of the other web service files that should be generated for me.
All the tutorials on web services that I've done to looked over all get there business method from 1 EJB :(
Please advise,
Freda PhelpsI had a problem too. Successfully created an EJB and its test application. Tested the same using Web client and works fine. Now created a web service from EJB methods. It created the skeletons. When tried creating Web Svc test client or web svc other files..it gives me an exception saying xmlservices.jar doesnt exist in the C:\Docs and Settings\<$username>\.jstudio\Ent04Q4modules. I have searched for this file and copied (overwritten) it into this directory. But still i cant proceed further.
-
Error when generating Web Services Proxy for SCA Application Module
Hello,
I'm trying to create Web Services for a simple Application Module with JDeveloper 11g (11.1.1.3.0).
I start a new ADF Project, I create an Application Module as simple as possible : it contains only a simple View Object on the DEPT Entity.
On my Application Module, I choose "Service Interface" and I add my View Object in the service interface.
I test my Web Service in the Embedded Weblogic Server, it works well. (I succeed in using the Get operation, for example).
But when I try to generate a Web Service proxy (right-click on the WSDL File -> Generate Web Service Proxy), It always fail with such errors :
oracle.jdeveloper.webservices.tools.WsdlValidationException: Error creating model from wsdl "file:/C:/JDeveloper/mywork/ApplicationAppelServiceSCA/Model/src/model/common/AppModuleService.wsdl": 'unset' is already defined'Bytes' is already defined'ref' is already defined'Duration' is already defined'Types' is already defined'Character' is already defined'type' is already defined'Day' is already defined'nestedInterfaces' is already defined'Date' is already defined'datagraph' is already defined'Type' is already defined'Integer' is already defined'ModelsType' is already defined'ChangeSummaryType' is already defined'instanceClass' is already defined'Month' is already defined'DataObject' is already defined'javaClass' is already defined'LongObject' is already defined'DateTime' is already defined'dataObject' is already defined'YearMonth' is already defined'ShortObject' is already defined'Long' is already defined'types' is already defined'JavaInfo' is already defined'IntObject' is already defined'Boolean' is already defined'DoubleObject' is already defi...
Can someone help me to understand this error ?
i never manually edited the WSDL File, so I don't understand why the generated WSDL or XSD files might contain errors.
Thanks for your Help,
LaurentWe have the same problem, and the problem was in the xsd import:
The wdsl import a schema that import other schema, the second import use a relative path, that was wrong.
So check the xsd import sequence.... -
Document Literal Web Service Stub Error
I am using jdeveloper 9.0.3 (necessary because we are doing OAF) and have created a Document Literal Web Service Stub. The stub runs perfectly in Jdeveloper, but when I move it to our 9iAS server (1.0.2.2.2), I get the error that it can not find the class \oracle\jdeveloper\webservices\runtime\WrappedDocLiteralStub.
On my local machine this file is located in jdev-rt.jar, which is in /jdevbin/jdev/lib. Is there a special way to package the web service so that the jar file is included? Or is there a patch I need to apply to the apps server?
Any help would be much appreciated.I am using jdeveloper 9.0.3 (necessary because we are doing OAF) and have created a Document Literal Web Service Stub. The stub runs perfectly in Jdeveloper, but when I move it to our 9iAS server (1.0.2.2.2), I get the error that it can not find the class \oracle\jdeveloper\webservices\runtime\WrappedDocLiteralStub.
On my local machine this file is located in jdev-rt.jar, which is in /jdevbin/jdev/lib. Is there a special way to package the web service so that the jar file is included? Or is there a patch I need to apply to the apps server?
Any help would be much appreciated. -
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 -
Parameter names change when generating web service from WSDL
Hi,
I have a problem with BEAs web services that I'm hoping someone can help me with.
I have a
WSDL file, and from that I want to generate a web service implementation and a
web service
client. In the WSDL file, I have a message defined like this:
<message name="someRequest">
<part xmlns:partns="http://www.w3.org/2001/XMLSchema" type="partns:base64Binary"
name="data"/>
</message>
I generate the server using the server using the wsdl2service Ant task, I implement
the necessary classes, and I deploy it. When I access the deployed web service,
the parameter name has changed, from "data" to "bytes". If I access the WSDL file
of the deployed web service, it says:
<message name="someRequest">
<part xmlns:partns="http://www.w3.org/2001/XMLSchema" type="partns:base64Binary"
name="bytes"/>
</message>
This happens for all parameters, string parameters are renamed to "string", base64Binary
parameters are renamed to "bytes", etc...
This poses a problem to me, because if I generate a web service client from the
original WSDL file, it will not be able to talk to my web service. Is there any
way of forcing a web service generated from a WSDL file to keep the parameter
names of the original WSDL file?
Any help in this is greatly appreciated.
Regards,
PetterFrom a quick look of your WSDL, it seams that you are mixing document-literal-bare and document-literal-wrapped flavor of web services. WSA may be able to do a better job at working around this mixed flavors than JDeveloper.
If you have hand crafted this WSDL, I would recomend that you spend some time looking at the way WSDL are generated, with the java-first mode (or bottom-up), then author the WSDL you need for the final service.
Here are sample of bare-style :
<xsd:element name="getPupilAddressResponse" type="xsd:string"/>
<xsd:element name="getPupilAddressRequest" type="xsd:int"/>
Wrapped will looks like that:
<xsd:element name="getSENLevelResponse">
<xsd:complexType>
<xsd:sequence maxOccurs="1" minOccurs="1">
<xsd:element name="LevelDetails" type="tns:SENLevelRecord"/>
<xsd:element name="RecordCount" type="xsd:int">
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
Hope this helps,
Eric -
Web Services, Schemas, and the xsi:type attribute
Hi List,
I have several questions reqarding web services, schemas, and the use of the xsi:type
attribute in messages.
Schemas:
Q1: How complex can a web service schema be?
Q2: Is it reasonable for a schema to contain derived types by extension [1]?
Q3: Could you use the International Purchase Order Schema [2] with a web service?
xsi:type
Q1: Is it reasonable for a web service to use the xsi:type attribute in the message(s)?
If I am interpreting Section 4.1.15 of the BasicProfile-1.0a [3] correctly, this
appears to be appropriate in certain circumstances.
Q2: When is it appropriate to use the xsi:type attribute? If a schema contains
derived types by extension [1]? If a schema contains xsd:anyType?
Q3: How does using the xsi:type attribute affect interoperability?
And finally,
Q4: Are there any examples available demonstrating the use of the xsi:type attribute
in messages?
Whew !!!
TIA,
Kent
[1] http://www.w3.org/TR/xmlschema-0/#DerivExt
[2] http://www.w3.org/TR/xmlschema-0/#ipo.xsd
[3] http://www.ws-i.org/Profiles/Basic/2003-08/BasicProfile-1.0a.htmlHi Kent,
A few answers inline...
HTH,
Bruce
Kent Kvarfordt wrote:
>
Hi List,
I have several questions reqarding web services, schemas, and the use of the xsi:type
attribute in messages.
Schemas:
Q1: How complex can a web service schema be?There are limits in converting the schema between language
representations, see this section [a] in the docs on roundtripping
generated data types.
[a]
http://edocs.bea.com/wls/docs81/webserv/assemble.html#1074725
Q2: Is it reasonable for a schema to contain derived types by extension [1]?
Q3: Could you use the International Purchase Order Schema [2] with a web service?
xsi:type
Q1: Is it reasonable for a web service to use the xsi:type attribute in the message(s)?
If I am interpreting Section 4.1.15 of the BasicProfile-1.0a [3] correctly, this
appears to be appropriate in certain circumstances.I've not seen this used.
http://www.ws-i.org/Profiles/Basic/2003-08/BasicProfile-1.0a.html#refinement34259632
>
Q2: When is it appropriate to use the xsi:type attribute? If a schema contains
derived types by extension [1]? If a schema contains xsd:anyType?
Q3: How does using the xsi:type attribute affect interoperability?My thought is that since this is not commonly used, then your risk of
interop failure is high.
>
And finally,
Q4: Are there any examples available demonstrating the use of the xsi:type attribute
in messages?Sorry, I looked and could not find any examples.
>
Whew !!!
TIA,
Kent
[1] http://www.w3.org/TR/xmlschema-0/#DerivExt
[2] http://www.w3.org/TR/xmlschema-0/#ipo.xsd
[3] http://www.ws-i.org/Profiles/Basic/2003-08/BasicProfile-1.0a.html -
While generating web service files, I get the following error:
Error during JAXRPC generation. See Output window
which says:
error: Type "javax.xml.soap.SOAPElement" implements more than one interface, interfaces: "javax.xml.soap.Node", "org.w3c.dom.Element" ...
I am new to developing web services, so maybe this is a simple setting that I need to change. Has anyone dealt with a similiar issue and solved the problem?
Thank you.Kindly send me the method signature of the web service operation.
Thanks.
Rico Cruz -
How to generate web services for OAS with wsdl extension
Hi,
I wanted to know how to generate web services from Oracle Application Server especially with .wsdl extension and with document/literal style.
I know that earlier there was a tool called SmartConnect from BEA WebLogic.
But that will work only with ALSB (Aqua logic Service Bus). I guess that ALSB has been renamed as Oracle Service Bus by Oracle after the acquisition of WebLogic. My question is what is the new name for the SmartConnect Tool from WebLogic, which generates wsdl very easily from Oracle database.
I am unable to know the new name for SmartConnect and how to download that tool from Oracle web site.
Also, I want to know, whether there is any other way to generate the wsdl from Oracle, if so, please let me know.
Regards
RamanHi Jeethandra,
Please refere to the below link might be some help.
[http://help.sap.com/saphelp_mdmgds55/helpdata/en/45/069152856241e1e10000000a1553f6/frameset.htm]
regards
shankar -
Difference between Direct binding , Web service Adapter and HTTP Binding
Can any one help what is the differnce between
*1) Direct binding*
*2) Webservice Adapter*
*3) HTTP Binding*
I am trying to use the above service adapters as references in BPEL.
I had invoked a web service hosted in OSB from BPEL via web service adapter and was successful
On going through few docs came through the other two service adapters but was not able to figure out what exactly is the differnce .
I learnt +"*Direct binding*"+ can be used to call OSB+ . How does it vary from Webservice Adapter+hi Eric ,
Thanks for clarification ..
OSB does not generate WSDL and web service adapter in BPEL mandates WSDL .
I had to create WSDL separately and then feed into Web service adapter in BPEL to call OSB Proxy service. Though successful , felt its not an better approach.
Please advice is there any way thatWSDL is generated in OSB itself . .if i try to create webservice on Proxy service the wsdl resulted from it has only binding and porty type .
Is it the same case for ++Direct binding++ .I assume it should not be the case
Maybe you are looking for
-
How many iMacs can I connect on TC via wifi?
Hey, For school where I am working we use a time capsule with 12 iMacs. Two of them can't contact the airport of TC. All the others do! I tried to replace the TC a better place: no result! Thanks a lot, filip
-
The site is called doresearches and i never used this site. the site address is:http://www.dosearches.com/?utm_source=b&utm_medium=smt&utm_campaign=eXQ&utm_content=sc&from=smt&uid=SAMSUNGXSSDXPM830X2X5XX7mmX128GB_S0TYNSAD204172204172&ts=1382360513 ev
-
I am getting entries which are 'all day' entries duplicated 8 to 9 times. I have updated my software on the phone to the latest version. Entries in iCal are only once. I have completely emptied my iPhone of all data. Has Apple resolved the issue yet
-
XPATH - navigating to a specific repeatable elements value
Hi out there! Currently I have a problem in evaluating some XPath for a bunch of corresponding node sets. Maybe someone can help me. I would like to get the field value of the bold market field ( 2 ) in just that CargoSet. The only things I will know
-
How to enable Volume Meter in Surround Mix
This file "Mixer_LevelMeter.bmp" is in theme for Surround Mixer.