Using Document Generator in Web Determinations
I am currently looking for a tutorial in order to use the web determinations standard document generator.
My attempts to generate documents are unsuccessful and the OPM help does unfortunately not answer all my questions.
Could anyone help me ?
Thanks to all.
Have a look at Document Generator Plugin Overview in the runtime help. We don't have a tutorial that I know of, so that information is about the best there is.
Similar Messages
-
Recommended steps to generate a web service using nested complex types
Hello,
I need to generate a web service that uses nested complex types with built in types on the bottom layer. I hve posted an attempt at a WSDL. Please give advice on if I am doing it correctly.
I have the suspicion that I should nest the complex types into the final complex type VendorStockingInterface. Please confirm.
<?xml version="1.0" encoding="utf-8"?>
<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/"
xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/"
xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/"
xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
xmlns:s="http://www.w3.org/2001/XMLSchema"
xmlns:s0="http://www.openuri.org/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
targetNamespace="http://www.openuri.org/">
<types>
<s:schema targetNamespace="http://www.openuri.org/"
xmlns:s="http://www.w3.org/2001/XMLSchema">
<s:element name="RegisterServiceRequest">
<s:complexType>
<s:sequence>
<s:element name="DeviceCapabilities">
<s:complexType>
<s:sequence>
<s:element name="OSName" type="s:string" nillable="true"/>
<s:element name="OSVersion" type="s:string" nillable="true"/>
<s:element name="BRType" type="s:string" nillable="true"/>
<s:element name="DisplayColors" type="s:string" nillable="true"/>
<s:element name="DisplayTechnology" type="s:string" nillable="true"/>
<s:element name="NetworkAccess" type="s:boolean" nillable="true"/>
<s:element name="DownloadMethod" type="s:string" nillable="true"/>
<s:element name="DownloadVersion" type="s:string" nillable="true"/>
<s:element name="Protocols" type="s:string" nillable="true"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="LicenseType">
<s:complexType>
<s:sequence>
<s:element name="Licences" type="s:string" nillable="false"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="PriceValue">
<s:complexType>
<s:sequence>
<s:element name="Value" type="s:float" nillable="false"/>
<s:element name="CurrencyType" type="s:string" nillable="false"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="RevenueModelType">
<s:complexType>
<s:sequence>
<s:element name="VSRP" type="RegisterServiceRequest:PriceValue" nillable="true"/>
<s:element name="WholesalePrice" type="RegisterServiceRequest:PriceValue" nillable="true"/>
<s:element name="VendorSplitPercentage" type="s:float" nillable="true"/>
<s:element name="VendorPurchasePrice" type="RegisterServiceRequest:PriceValue" nillable="true"/>
<s:element name="License" type="RegisterServiceRequest:LicenseType" nillable="false"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="VendorItemIdentifierType">
<s:complexType>
<s:sequence>
<s:element name="VendorProductDisplay" type="s:string" nillable="false"/>
<s:element name="VendorProductVersion" type="s:string" nillable="false"/>
<s:element name="VendorProductCode" type="s:string" nillable="false"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="VendorBriefType">
<s:complexType>
<s:sequence>
<s:element name="VendorID" type="s:string" nillable="false"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="VendorItemBriefType">
<s:complexType>
<s:sequence>
<s:element name="VendorProductID" type="RegisterServiceRequest:VendorItemIdentifierType" nillable="false"/>
<s:element name="VendorID" type="RegisterServiceRequest:VendorBriefType" nillable="false"/>
<s:element name="VendorDescription" type="s:string" nillable="true"/>
<s:element name="VendorPricing" type="RegisterServiceRequest:RevenueModelType" nillable="false"/>
<s:element name="DownloadURL" type="s:string" nillable="true"/>
<s:element name="ShortCode" type="s:string" nillable="true"/>
<s:element name="ApplicationCode" type="s:string" nillable="true"/>
<s:element name="DRMMethod" type="s:string" nillable="true"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="ContentType">
<s:complexType>
<s:sequence>
<s:element name="Categorization" type="s:string" nillable="false"/>
<s:element name="MIMEType" type="s:string" nillable="true"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="VendorStockingInterface">
<s:complexType>
<s:sequence>
<s:element name="VendorItemInfo" type="RegisterServiceRequest:VendorItemBriefType" nillable="false"/>
<s:element name="ProductType" type="RegisterServiceRequest:ContentType" nillable="false"/>
<s:element name="DeviceRequirements" type="RegisterServiceRequest:DeviceCapabilitiesType" nillable="true"/>
<s:element name="VendorPricing" type="RegisterServiceRequest:RevenueModelType" nillable="false"/>
<s:element name="ProgramMemory" type="s:int" nillable="true"/>
<s:element name="DataMemory" type="s:int" nillable="true"/>
<s:element name="Author" type="s:string" nillable="true"/>
<s:element name="Language" type="s:string" nillable="true"/>
</s:sequence>
</s:complexType>
</s:element>
<s:element name="RegisterServiceResponse">
<s:complexType>
<s:sequence>
<s:element name="Message" type="s:string"/>
</s:sequence>
</s:complexType>
</s:element>
</s:sequence>
</s:complexType>
</s:element>
</s:schema>
</types>
<message name="RegisterServiceSoapIn">
<part name="parameters" element="s0:RegisterServiceRequest"/>
</message>
<message name="RegisterServiceSoapOut">
<part name="parameters" element="s0:RegisterServiceResponse"/>
</message>
<portType name="RegisterServiceSoap">
<operation name="RegisterService">
<input message="s0:RegisterServiceSoapIn"/>
<output message="s0:RegisterServiceSoapOut"/>
</operation>
</portType>
<binding name="RegisterServiceSoap" type="s0:RegisterServiceSoap">
<soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
<operation name="RegisterService">
<soap:operation soapAction="http://www.openuri.org/RegisterService" style="document"/>
<input>
<soap:body use="literal"/>
</input>
<output>
<soap:body use="literal"/>
</output>
</operation>
</binding>
<service name="RegisterService">
<port name="RegisterServiceSoap" binding="s0:RegisterServiceSoap">
<soap:address location="http://localhost:7001/RegisterService.jws"/>
</port>
</service>
</definitions>
I'd like the the consumer of the web service to send it a document with the fields formatted to the VendorInterface complextype which contains the other complextypes. In return the consumer will get another document with some acknowledgement messages.
To make this happen I'd like to generate the web service, creating the complex type classes and XMLBeans. I'd like advice on the steps to take once I get a good WSDL.
There is also the option to go from the other direction. Is it better to attempt to create a schema XSD document instead and use that to work towards the web service and WSDL? If so, could someone give an example of how to format an XSD using my example needs.I think I have got it all in place, though I have not tested it as of yet. For others who are looking at this, here is my XSD file from which all my complextypes were generated and lastly here is the actual web service file.
?xml version="1.0"?>
<xs:schema targetNamespace="http://openuri.org/RegisterService"
xmlns:rs="http://openuri.org/RegisterService"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
xmlns:tns="http://temp.openuri.org/VerizonBOBO/RegisterServiceRequestDocument.xsd">
<xs:element name="RegisterServiceRequest" type="rs:VendorStockingInterface"/>
<xs:complexType name="DeviceCapabilitiesType">
<xs:sequence>
<xs:element name="OSName" type="xs:string" nillable="true"/>
<xs:element name="OSVersion" type="xs:string" nillable="true"/>
<xs:element name="BRType" type="xs:string" nillable="true"/>
<xs:element name="DisplayColors" type="xs:string" nillable="true"/>
<xs:element name="DisplayTechnology" type="xs:string" nillable="true"/>
<xs:element name="NetworkAccess" type="xs:boolean" nillable="true"/>
<xs:element name="DownloadMethod" type="xs:string" nillable="true"/>
<xs:element name="DownloadVersion" type="xs:string" nillable="true"/>
<xs:element name="Protocols" type="xs:string" nillable="true"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="LicenseType">
<xs:sequence>
<xs:element name="Licences" type="xs:string" nillable="false"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="PriceValue">
<xs:sequence>
<xs:element name="Value" type="xs:float" nillable="false"/>
<xs:element name="CurrencyType" type="xs:string" nillable="false"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="RevenueModelType">
<xs:sequence>
<xs:element name="VSRP" type="rs:PriceValue" nillable="true"/>
<xs:element name="WholesalePrice" type="rs:PriceValue" nillable="true"/>
<xs:element name="VendorSplitPercentage" type="xs:float" nillable="true"/>
<xs:element name="VendorPurchasePrice" type="rs:PriceValue" nillable="true"/>
<xs:element name="License" type="rs:LicenseType" nillable="false"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VendorItemIdentifierType">
<xs:sequence>
<xs:element name="VendorProductDisplay" type="xs:string" nillable="false"/>
<xs:element name="VendorProductVersion" type="xs:string" nillable="false"/>
<xs:element name="VendorProductCode" type="xs:string" nillable="false"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VendorBriefType">
<xs:sequence>
<xs:element name="VendorID" type="xs:string" nillable="false"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VendorItemBriefType">
<xs:sequence>
<xs:element name="VendorProductID" type="rs:VendorItemIdentifierType" nillable="false"/>
<xs:element name="VendorID" type="rs:VendorBriefType" nillable="false"/>
<xs:element name="VendorDescription" type="xs:string" nillable="true"/>
<xs:element name="VendorPricing" type="rs:RevenueModelType" nillable="false"/>
<xs:element name="DownloadURL" type="xs:string" nillable="true"/>
<xs:element name="ShortCode" type="xs:string" nillable="true"/>
<xs:element name="ApplicationCode" type="xs:string" nillable="true"/>
<xs:element name="DRMMethod" type="xs:string" nillable="true"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ContentType">
<xs:sequence>
<xs:element name="Categorization" type="xs:string"/>
<xs:element name="MIMEType" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="VendorStockingInterface">
<xs:sequence>
<xs:element name="VendorItemInfo" type="rs:VendorItemBriefType"/>
<xs:element name="ProductType" type="rs:ContentType"/>
<xs:element name="DeviceRequirements" type="rs:DeviceCapabilitiesType"/>
<xs:element name="VendorPricing" type="rs:RevenueModelType"/>
<xs:element name="ProgramMemory" type="xs:int"/>
<xs:element name="DataMemory" type="xs:int"/>
<xs:element name="Author" type="xs:string"/>
<xs:element name="Language" type="xs:string"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="RegisterServiceResponse">
<xs:sequence>
<xs:element name="Message" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:schema>
The Web Service File:
import org.openuri.registerService.RegisterServiceResponse;
import org.openuri.registerService.RegisterServiceRequestDocument;
import com.verizon.hp.registerservice.*;
public class RegisterService implements com.bea.jws.WebService
static final long serialVersionUID = 1L;
* @common:operation
* @jws:protocol form-post="false" form-get="false"
public org.openuri.registerService.RegisterServiceResponse RegisterService(org.openuri.registerService.RegisterServiceRequestDocument RegisterServiceDoc)
VendorStockingInterface vsInterface = (VendorStockingInterface)RegisterServiceDoc.getRegisterServiceRequest();
System.out.println(vsInterface.toString());
com.verizon.hp.registerservice.RegisterServiceResponse serviceResponse = new com.verizon.hp.registerservice.RegisterServiceResponse();
serviceResponse.setMessage("Register New Service Message has been received successfully");
org.openuri.registerService.RegisterServiceResponse response = (org.openuri.registerService.RegisterServiceResponse)serviceResponse;
return response;
} -
Complex schemas using Document Literal Web Services
I am trying to use document style web services and top down approach. I prepared a request, response and fault schema. In those schemas i have attributes defined. When i use WSCOMPILE, it does not generate proper classes, if the schema is too complex. It has worked only for simple schemas. Is there any other way of doing it?
Hi!
If you are using jwsdp 1.6 or earlier and I remember correctly this uses JAXB 1.0 for databinding, which doesnt support all schema constructs.. Even if I'm wrong on that, you could use the -f:nodatabinding option with wscompile and do your own databinding with for example xmlbeans, which supports all schema constructs and is far more flexible than jaxb 1.0 (= personal opinion ;-)
good luck!
/Ole -
Connecting Web Determinations 10.1.0.27 to a DMS
We are planning to connect Oracle Web Determinations to a document management system. This document management system uses a web service to connect with other systems. Our application already generates a PDF, and we want to save this PDF in a specific folder and then call the webservice to add the document to the Document Management System.
What would be the best way to implement this?There is a particular adapter that is responsible for outputing the results of an Interview from Web Determinations. This is the Data Adapter (see "Data Adaptor Plugin Overview" in the "Oracle Policy Automation Developer Help"). A Data Adapter is exercised when a user clicks on the Save button in Web Determinations.
Out of the box the default data adapter just saves the data to an XML file locally.
Essentially you need to implement a custom Data Adapter that will save the interview in a format that your DMS can interpret.
For example the OPA Connector for Siebel has a Data Adapter which sends the results of an Interview to Siebel via a web service. -
Instantiate Oracle Web Determinations
Dear all,
My question is straight forward: Is it possible to instantiate Oracle Web Determinations with the data from a What-If Analysis document or the CSV-files generated from this document on a local computer? The reason I ask this question, is that it would be nice to show a preview of the rule base, using Oracle Web Determinations, including the data set the rule base will be dependend on. I can perform both test cases and what-if analysis but these both come without screens. As may become clear from my question, I would like to make a preview with screens.Test cases from a what-if spreadsheet can be exported to a regression test script: http://docs.oracle.com/html/E48373_01/toc.htm#Analysis/Conduct_what-if_analysis_using_Excel.htm#Export2
And a test case from a regression test script can be loaded into Web Determinations. So, yes, in this way a test case from a what-if can be loaded into Web Determinations.
Loading test cases from regression tester into Web Determinations:
Open the relevant regression test case
Click 'export' in the top-right corner.
Save the test case
Run the debugger with screens (OPM Build menu | Build and Debug - With screens)
From within the Debugger, click the Import button in the top-right, browse to the test case you just saved, select it and Open.
From the Web Determinations tab of the Debugger, click the refresh button (little button in the top-left with two arrows going in a circle)
If you want to load the test case in Web Determinations while it is running outside of OPM, save the test case in the data folder of the Web Determinations Release folder (..\(your project name)\Release\web-determinations\data\(your project name)\your-saved-test-case-goes-here). Then when you run Web Determinations you will see the test case when clicking the Load button.
Also, keep in mind that you can play with scenarios with screens in the Debugger in OPM. You don’t have to deploy to an external browser to do this, and you don't have to import from elsewhere. Just make sure to select ‘With screens’ when going to ‘Build and Debug’.
Cheers,
Jasmine -
How can I use XMLBeans in a Web Services client?
How can I use XMLBeans in a standalone Java client with a Web Service?
I posted the message below earlier in the year, but have not yet been successful
in my
attempts.
regards
Eddie
Hi,
I'm trying to using XMLBeans to send a document to a web service from a standalone
Java client. I'm using the PurchaseOrder (easypo) example document, and the service
expects a parameter of type PurchaseOrderDocument. The client proxy class generated
by WebLogic Workshop, however, expects to send a parameter of type PurchaseOrder.
In the client, I can instantiate a PurchaseOrderDocument, and then obtain a PurchaseOrder
(e.g. pod.getPurchaseOrder() ), but the returned class is not compatible with
the PurchaseOrder type that the client proxy expects.
In a previous attempt (not using Workshop), the client would not compile because
it expected to send a non-abstract class with a public default constructor (presumably
a JAX-RPC requirement), and XMLBeans had generated an interface.
Any help would be greatly appreciated!
thanks & regards
EddieI have been experiencing similar problems with the HTML Editor and have managed to find an answer that should start to answer some of my questions. The Apex HTML Editor Standard is actually an HTML editor called FCKeditor. The FCKeditor has a Javascript API that can be found at http://docs.fckeditor.net/FCKeditor_2.x/Developers_Guide/JavaScript_API. Unfortuately this doesn't seem to give the whole answer and I found more at http://www.houseoffusion.com/groups/cf-talk/thread.cfm/threadid:49607.
I needed to get the text entered within my html editor standard (e.g. P1_MYTEXT) and use it within my javascript function. I did this by using the following script
<script language="JavaScript" type="text/javascript">
function showtext(){
var oEditor = FCKeditorAPI.GetInstance('P1_MYTEXT');
var editortext = escape(oEditor.GetXHTML(oEditor.FormatOutput));
alert(editortext);
</script>
Hope this helps.
Matthew -
Generating a Web Service and Oracle DATE type
Hi,
I need to generate a Web Service from an EJB model based upon entities generated from the Oracle 11g database that contain DATE types.
I realize that java.sql.Date may not be a supported JAX-RPC type but I would be VERY grateful for some instructions about the easiest way to solve this problem when generating the web service in JDeveloper 11g.
The integrated WLS server log looks like this:
<2009-apr-26 kl 23:13 CEST> <Error> <HTTP> <BEA-101216> <Servlet: "WSEE_SERVLET" failed to preload on startup in Web application: "/SessionFacadeBean".
javax.xml.ws.WebServiceException: Unable to create JAXBContext
at com.sun.xml.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:158)
at com.sun.xml.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:87)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:264)
at com.sun.xml.ws.server.EndpointFactory.createSEIModel(EndpointFactory.java:322)
at com.sun.xml.ws.server.EndpointFactory.createEndpoint(EndpointFactory.java:188)
Truncated. see log file for complete stacktrace
java.security.PrivilegedActionException: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.sql.Timestamp does not have a no-arg default constructor.
this problem is related to the following location:
at java.sql.Timestamp
at public java.sql.Timestamp oracle.Lan.getAterlamnadDatum()
at oracle.Lan
at public java.util.List ejbmodel.jaxws.QueryLanFindByNrResponse._return
at ejbmodel.jaxws.QueryLanFindByNrResponse
..... and so on
The entity bean i question looks like this:
package oracle;
import java.io.Serializable;
import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
@Entity
@NamedQueries({
@NamedQuery(name = "Lan.findAll", query = "select o from Lan o"),
@NamedQuery(name = "Lan.FindByNr", query = "select o from Lan o where o.lanNr = :p_lanNr")
public class Lan implements Serializable {
@Column(name="ATERLAMNAD_DATUM")
private Timestamp aterlamnadDatum;
@Column(nullable = false)
private Long demandcount;
private Timestamp demanddate;
@Column(name="EXEMPLAR_NR", nullable = false)
private Long exemplarNr;
@Column(nullable = false)
private String isbn;
@Id
@Column(name="LAN_NR", nullable = false)
private Long lanNr;
@Column(nullable = false)
private Long remindercount;
private Timestamp reminderdate;
@Column(name="TILLBAKA_DATUM")
private Timestamp tillbakaDatum;
@Column(name="UTLANAD_DATUM")
private Timestamp utlanadDatum;
@ManyToOne
@JoinColumn(name = "PERSON_NR")
private Lantagare lantagare;Hi All,
When i'm developing EJB Webservice i am getting following error .. i think it doesn't support java.sql.Date; and java.sql.timestamp; types
the error are as show in below please suggest me.
[Running application oil on Server Instance IntegratedWebLogicServer...]
[05:04:09 AM] ---- Deployment started. ----
[05:04:09 AM] Target platform is (Weblogic 10.3).
[05:04:09 AM] Retrieving existing application information
[05:04:09 AM] Running dependency analysis...
[05:04:09 AM] Deploying 2 profiles...
[05:04:10 AM] Wrote EJB Module to C:\Documents and Settings\Administrator\Application Data\JDeveloper\system11.1.1.4.37.59.23\o.j2ee\drs\oil\oil_webservicesEJB.jar
[05:04:10 AM] Wrote Enterprise Application Module to C:\Documents and Settings\Administrator\Application Data\JDeveloper\system11.1.1.4.37.59.23\o.j2ee\drs\oil
[05:04:10 AM] Redeploying Application...
<Jun 30, 2011 5:04:10 AM EDT> <Warning> <J2EE> <BEA-160195> <The application version lifecycle event listener oracle.security.jps.wls.listeners.JpsAppVersionLifecycleListener is ignored because the application oil is not versioned.>
<Jun 30, 2011 5:04:10 AM EDT> <Warning> <Munger> <BEA-2156203> <A version attribute was not found in element webservices in the deployment descriptor in C:\Documents and Settings\Administrator\Application Data\JDeveloper\system11.1.1.4.37.59.23\o.j2ee\drs\oil\oil_webservicesEJB.jar/META-INF/webservices.xml. A version attribute is required, but this version of the Weblogic Server will assume that the JEE5 is used. Future versions of the Weblogic Server will reject descriptors that do not specify the JEE version.>
<Jun 30, 2011 5:04:10 AM EDT> <Error> <HTTP> <BEA-101216> <Servlet: "WSEE_SERVLET" failed to preload on startup in Web application: "/oil-oil_webservices-webapp".
javax.xml.ws.WebServiceException: Unable to create JAXBContext
at com.sun.xml.ws.model.AbstractSEIModelImpl.createJAXBContext(AbstractSEIModelImpl.java:164)
at com.sun.xml.ws.model.AbstractSEIModelImpl.postProcess(AbstractSEIModelImpl.java:94)
at com.sun.xml.ws.model.RuntimeModeler.buildRuntimeModel(RuntimeModeler.java:281)
at com.sun.xml.ws.server.EndpointFactory.createSEIModel(EndpointFactory.java:363)
at com.sun.xml.ws.server.EndpointFactory.createEndpoint(EndpointFactory.java:202)
Truncated. see log file for complete stacktrace
Caused By: java.security.PrivilegedActionException: com.sun.xml.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
java.sql.Timestamp does not have a no-arg default constructor.
this problem is related to the following location:
at java.sql.Timestamp
>
[05:04:11 AM] #### Deployment incomplete. ####
#### Cannot run application oil due to error deploying to IntegratedWebLogicServer.
[05:04:11 AM] Remote deployment failed
[Application oil stopped and undeployed from Server Instance IntegratedWebLogicServer]
Thanks in advance..
Siva
Edited by: Shankar on Jun 30, 2011 7:02 AM -
No accounting document generated from SD
Dear Friends,
When I am creating Billing document from SD using VF01 tranacstion, I am getting error message that "Document 90000028 saved (no accounting document generated)", but I had activated all config between IS-U FI-CA and SD.
I hope the billing document is getting generated, but it's not posting and creating the accounting document in FICA side.Hi ,
There might be 2 reasons why the SD document doesnt post to FICA .
1. Maintainence of relevant configuration under the node - SPRO - Financial accounting New - Contract accounting receivable and payable - Integration - Sales and distribution .
Hope you have maintained all the relevant configs. under the node ( 3 in no's ) .
2. Secondly if there is an error while determining the accounts for posting the billing documents , you can view the same through document details , where in you can view the documents that are being generated for the same .
Kindly check the 2 areas and revert back if the problem still persists .
Cheers ,
Dewang -
No accounting document generated after creating billing document.
I created my billing document in SD and saved but I am getting the message "No accounting document generated"
What am I missing and what do I need to do?
Is there a T code or menu path to see all billing document blocked from posting?
Thanks for your prompt response.Hi,
Check in Tcode VOFA if account determination procedure is assigned there.
If it is there,then go to VF02 and try to release manually to accounting.
Check Tcode VFX3 for blocked billing documents
Reward points if useful
Regards,
Amrish Purohit -
VF01 Issue: no accounting document generated
Dears,
While Billing the Down Payment (VF01) in ETO case of IDES, the system issued a message: no accounting document generated. So the payment data can not be updated. Does anyone know how to solve this problem? Thx!Hi,
If the accounting document is not generated there might be couple of reasons.
To know the reason
Goto change mode of Billing document VF02, and goto top left corner menu, Billing document -> Release to accounting.
Then you will get the reason why the accounting document is not generated.
The reason might be
1. Revenue Acc. Determination is not done properly
2. Or the G/L account which you maintained might not be maintained properly.
hope it is useful. Reward the points if found useful.
Get back in case any help is needed.
Thanks! -
Generating Ruby Web Service Access Classes from a WSDL
If you have tried to consume a web service from Ruby you surely have noticed how annoying is to write manually all the Ruby code just to invoke a service with complext input parameters' structure:
- You have to know what do the input parameters, their structure and type look like;
- You have to write Ruby classes for them to encapsulate the structures;
- You have to instantiate these classes and pass the objects to the web service proxy class;
- You have to interprete the output parameters.
All this is not impossible of course, but if you are just consumer of the web service and not the developer, if you don't have the exact documentation, you have to read the WSDL description of the service and create the Ruby classes (structures) for the parameters.
Fortunately there is a small, though handy tool, called <b>wsdl2ruby.rb</b>. It accomplishes all these boring tasks for you.
In the following example I will try to show you how <b>wsdl2ruby</b> can be used to generate Ruby classes for accessing a SAP NetWeaver web service, called <b>CreditChecker1</b> (a web service for checking if a person is reliable credit consumer).
To generate the necessary classes we will create a ruby script. Let us name it <b>ws2rgen.rb</b>. Here is what this file looks like:
# Import the wsdl2ruby library.
require 'wsdl/soap/wsdl2ruby'
require 'logger'
# Callback function for the WSDL 2 Ruby generation options.
def getWsdlOpt(s)
optcmd= {}
s << "Service"
optcmd['classdef'] = s
#should work but doesn't, driver name is derived from classname
#if you specify both it breaks, same thing for client_skelton
#optcmd['driver'] = s
optcmd['driver'] = nil
#optcmd['client_skelton'] = nil
optcmd['force'] = true
return optcmd
end
# Create logger.
logger = Logger.new(STDERR)
# Create WSDL2Ruby object and generate.
worker = WSDL::SOAP::WSDL2Ruby.new
worker.logger = logger
# WSDL file location.
worker.location = "http://mysapserver:53000/CreditChecker1/Config1?wsdl"
# Where to generate.
worker.basedir = "temp"
# Set options.
worker.opt.update(getWsdlOpt("Service"))
# Heat.
worker.run
The procedure is straightforward. First we create the WSDL2Ruby object, set its properties <b>location</b> and <b>basedir</b> and then set all other options via the callback function <b>getWsdlOpt()</b>. For further information about these parameters one could consult the source code of wsdl2ruby or contact the developers. Nevertheless the default options are pretty satisfactory. With the last line we start the generation. Two Ruby files will be generated in the <b>temp</b> folder, which is a subfolder of the script's current folder. <b>Please, create the folder "temp" before executing the script.</b>
This generates two files. The first one is <b>CreditChecker1Wsd.rb</b>, containing the necessary data structures:
require 'xsd/qname'
# {urn:CreditChecker1Vi}areReliable
class AreReliable
@@schema_type = "areReliable"
@@schema_ns = "urn:CreditChecker1Vi"
@@schema_qualified = "true"
@@schema_element = [["persons", "ArrayOfPerson"]]
attr_accessor :persons
def initialize(persons = nil)
@persons = persons
end
end
# {urn:CreditChecker1Vi}areReliableResponse
class AreReliableResponse
@@schema_type = "areReliableResponse"
@@schema_ns = "urn:CreditChecker1Vi"
@@schema_qualified = "true"
@@schema_element = [["response", ["ArrayOfboolean", XSD::QName.new("urn:CreditChecker1Vi", "Response")]]]
def Response
@response
end
def Response=(value)
@response = value
end
def initialize(response = nil)
@response = response
end
end
# {urn:CreditChecker1Vi}isReliable
class IsReliable
@@schema_type = "isReliable"
@@schema_ns = "urn:CreditChecker1Vi"
@@schema_qualified = "true"
@@schema_element = [["person", "Person"]]
attr_accessor :person
def initialize(person = nil)
@person = person
end
end
# {urn:CreditChecker1Vi}isReliableResponse
class IsReliableResponse
@@schema_type = "isReliableResponse"
@@schema_ns = "urn:CreditChecker1Vi"
@@schema_qualified = "true"
@@schema_element = [["response", ["SOAP::SOAPBoolean", XSD::QName.new("urn:CreditChecker1Vi", "Response")]]]
def Response
@response
end
def Response=(value)
@response = value
end
def initialize(response = nil)
@response = response
end
end
# {urn:java/lang}ArrayOfboolean
class ArrayOfboolean < ::Array
@@schema_type = "boolean"
@@schema_ns = "http://www.w3.org/2001/XMLSchema"
@@schema_element = [["boolean", ["SOAP::SOAPBoolean[]", XSD::QName.new("urn:java/lang", "boolean")]]]
end
# {urn:com.sap.scripting.test.services.creditchecker.classes}Person
class Person
@@schema_type = "Person"
@@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
@@schema_element = [["age", "SOAP::SOAPInt"], ["name", "SOAP::SOAPString"], ["purse", "Purse"]]
attr_accessor :age
attr_accessor :name
attr_accessor :purse
def initialize(age = nil, name = nil, purse = nil)
@age = age
@name = name
@purse = purse
end
end
# {urn:com.sap.scripting.test.services.creditchecker.classes}Purse
class Purse
@@schema_type = "Purse"
@@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
@@schema_element = [["color", "SOAP::SOAPString"], ["money", "Money"]]
attr_accessor :color
attr_accessor :money
def initialize(color = nil, money = nil)
@color = color
@money = money
end
end
# {urn:com.sap.scripting.test.services.creditchecker.classes}Money
class Money
@@schema_type = "Money"
@@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
@@schema_element = [["amount", "SOAP::SOAPDouble"], ["currency", "SOAP::SOAPString"]]
attr_accessor :amount
attr_accessor :currency
def initialize(amount = nil, currency = nil)
@amount = amount
@currency = currency
end
end
# {urn:com.sap.scripting.test.services.creditchecker.classes}ArrayOfPerson
class ArrayOfPerson < ::Array
@@schema_type = "Person"
@@schema_ns = "urn:com.sap.scripting.test.services.creditchecker.classes"
@@schema_element = [["Person", ["Person[]", XSD::QName.new("urn:com.sap.scripting.test.services.creditchecker.classes", "Person")]]]
end
The second file is <b>CreditChecker1WsdDriver.rb</b>. In it you can find a generated child class of SOAP::RPC::Driver, containing all methods of this web service, so you don't need to add every method and its parameters to call the web service.
require 'CreditChecker1Wsd.rb'
require 'soap/rpc/driver'
class CreditChecker1Vi_Document < ::SOAP::RPC::Driver
DefaultEndpointUrl = "http://mysapserver:53000/CreditChecker1/Config1?style=document"
MappingRegistry = ::SOAP::Mapping::Registry.new
Methods = [
def initialize(endpoint_url = nil)
endpoint_url ||= DefaultEndpointUrl
super(endpoint_url, nil)
self.mapping_registry = MappingRegistry
init_methods
end
private
def init_methods
Methods.each do |definitions|
opt = definitions.last
if opt[:request_style] == :document
add_document_operation(*definitions)
else
add_rpc_operation(*definitions)
qname = definitions[0]
name = definitions[2]
if qname.name != name and qname.name.capitalize == name.capitalize
::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
__send__(name, *arg)
end
end
end
end
end
end
There is a problem with this script, since the <b>Methods</b> array is empty. I suppose it is due to the imports in the SAP NetWeaver WSDL, maybe wsdl2ruby is not mighty enough to handle these WSDL imports. When I succeed in overcoming this, I will post again in this thread to let everybody know.
Message was edited by: Vasil BachvarovHi,
I find Ruby to be really tough to consume SAP WebServices. For simple scenarios like currency conversion may it is good. But for complex scenarios such as Purchase Order entry etc..I found it very annoying to use wsdl2ruby and see that it didnt generate correct proxies.
Until wsdl2ruby is stable enough to support complex datatypes, authentication etc. my recommendation is to use JRuby and use Java Proxies generated by NW Developer studio until pure Ruby's web service support improves.
Following link might be of interest w.r.t wsdl2ruby
http://derklammeraffe.blogspot.com/2006/08/working-with-wsdl2r-soap4r-and-complex.html
Regards
Kiran -
Using Document Library with Baseline
Hi there,
I have a specific need with Sharepoint. I have a document library and I want to be able to mark with a tag or generate a baseline for my folders.
I've already searched on the web, and there is someone doing it just coping and pasting every single file. Is that the better way to get this?
Thanks,
TiagoHi Tiago,
What did you mean "Using Document Library with Baseline" and "generate a baseline for my folders"?
Did you mean that navigate the document library folders in treeview?
Did you mean that search or filter multiple folders documents with the same tag (managed metadata column)?
You may be able to use the "Navigation Hierarchies and Key Filters" for that specified SharePoint 2010 library, here is an article about metadata navigation settings you can check below,
http://www.sharepointboost.com/blog/understand-and-configure-metadata-avigation-and-filtering/
Thanks
Daniel Yang
TechNet Community Support -
Support for document and documentwrapped web services
List,
Are "document" and "documentwrapped" style web services supported in WSL 8.1 SP1?
The
documentation referenced below [1] [2] indicates that these styles are supported,
but in the
Unsupported Features section of the Web Services overview [3] states the RPC literal
style and
Document encoded style are not supported. It is my understanding that the style
attribute
values of the servicegen ant task map to the SOAP encodings as follows:
RPC -> SOAP RPC
documentwrapped -> SOAP RPC-literal
document -> SOAP document-literal
Is this correct?
Regards,
Kent
[1] http://edocs.bea.com/wls/docs81/webserv/design.html#1038901
[2] http://edocs.bea.com/wls/docs81/webserv/anttasks.html#1063540
[3] http://edocs.bea.com/wls/docs81/webserv/overview.html#1074641So is it a true statement that if I use the documentwrapped style, I don't have
the restriction
of having only one void method while gaining the scalability and performance benefits
[1] of
SOAP document-literal encoding? Does the documentwrapped style have any restrictions
regarding out and in-out parameters? If so, what is the correct way in Java to
specify a
parameter as "IN" only?
Thanks again,
--Kent
[1] http://dev2dev.bea.com/products/wlworkshop/articles/Cohen.jsp
"manoj cheenath" <[email protected]> wrote:
This is correct. In the doc/lit bare case, a
method with no parameter will have an empty
soap envelope. If you look at the schema for
this operation, it will be an empty complexType.
So in the style, you can only have one void
method. WLS tools (servicegen/source2wsdd) do
not enforce this. Which I think is a bug.
Hope this helps,
-manoj
http://manojc.com
"manoj cheenath" <[email protected]> wrote in message
news:[email protected]...
This is correct. In the doc/lit bare case, a
method with no parameter will have an empty
soap envelope. If you look at the schema for
this operation, it will be an empty complexType.
So in the style, you can only have one void
method. WLS tools (servicegen/source2wsdd) do
not enforce this. Which I think is a bug.
Hope this helps,
-manoj
http://manojc.com
"Kent Kvarfordt" <[email protected]> wrote in message
news:[email protected]...
Bruce,
How do the restrictions apply to methods that do not have any paramters?
>>>
I have attached a copy of the weblogic webservice complex example that I
modified
to use
document style encoding and contains two noarg methods, getVersion
and
getAnotherVersion. I also modified the buy and sell methods to take single arguments.
Following are the results from the test web page for a call to getAnotherVersion.
<!--REQUEST.................-->
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<env:Header>
</env:Header>
<env:Body>
</env:Body>
</env:Envelope>
<!--RESPONSE.................-->
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<env:Header>
</env:Header>
<env:Body>
<n1:buy
xmlns:n1="http://www.bea.com/examples/Trader">getVersion</n1:buy>
</env:Body>
</env:Envelope>
What am I missing? BTW - I am using Weblogic Server 8.1 SP1.
Also, how does the weblogic documentwrapped style map to the SOAP encodings
SOAP RPC, SOAP RPC-literal, and SOAP document-literal? Are the messages encoded
SOAP doc/lit, but the programming model allows for multiple parameters? Is
the documentwrapped style specific to weblogic webservices?
And finally, given Java is a pass by value language, do I need to
do
anything
special to the webservice method signatures to specify the parameters
as
"IN"
parameters?
Thanks for all the help. From looking at the list traffic, your
keeping
busy.
Regards,
Kent
Bruce Stephens <[email protected]> wrote:
Hi Kent,
There are restrictions on the doc/lit style of encoding, such as
the
methods that implement each operation of the Web Service can have only
one parameter and the methods that implement each operation cannot use
out and in-out parameters. The documentwrapped generates a resulting
Web Service operations that can take any number of parameters, although
the parameter values will be wrapped into one complex data type in the
SOAP messages. Manoj has an example of documentwrapped [1].
We do not support rpc/lit. You might want to review this note by Yasser
Shohoud, it explains this in exquisite detail [2]
Regards,
Bruce
[1]
http://manojc.com/?sample14
[2]
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnwebsrv/h
tml/rpc_literal.asp
Kent Kvarfordt wrote:
List,
Are "document" and "documentwrapped" style web services supported
in
WSL 8.1 SP1?
The
documentation referenced below [1] [2] indicates that these styles are supported,
but in the
Unsupported Features section of the Web Services overview [3]
states
the RPC literal
style and
Document encoded style are not supported. It is my understanding
that
the style
attribute
values of the servicegen ant task map to the SOAP encodings as
follows:
RPC -> SOAP RPC
documentwrapped -> SOAP RPC-literal
document -> SOAP document-literal
Is this correct?
Regards,
Kent
[1] http://edocs.bea.com/wls/docs81/webserv/design.html#1038901
[2] http://edocs.bea.com/wls/docs81/webserv/anttasks.html#1063540
[3] http://edocs.bea.com/wls/docs81/webserv/overview.html#1074641 -
Can data be passed to an external web server using the "in-course web browsing" feature in ver. 7? I would like to display a simple web page, and I would like to pass to that web page the answers to all the quiz questions, quiz score, etc. In other words, instead of passing quiz results to a SCORM-compliant LMS like Moodle, I'd like to pass that data to a Drupal Webform using a URL like:
https://www.example.com/my-drupal-webform?param1=value1¶m2=value2...¶mn=valuen
Is this possible?
Thanks,
JohnYou have to make sure every step in MOS Document ID 726414.1 that is applicable to your E-Business Suite 12.1.x release is performed. Enabling ASADMIN is just one of the steps. In spite of following all the steps in this Document you continue to get the error when clicking "Generate WSDL", please log a Service Request with Oracle Support.I will check all steps again. Maybe I missed one... Thanks!
-
How to find the root document of my web application, if it is in WAR file ?
Hi,
I want the root document of my web application. I my EAR file, i have only one WAR file. In my WAR file the following are the folders:-
enterprise/..
properties/sql/..
locale/..
WEB-INF/..
Once i get the 'real path' or 'root document', I will use that in my application in no.of times. Path(root document) is used in the following way in my application:-
File emailTemplatesFolder = new File( path + "/enterprise/"+ enterpriseCode+"/EmailTemplates");
If i use getRealPath() method, it works fine, in use Oracle9ias, because, EAR file will be extracted. Where as in Weblogic 6.1, EAR file willn't be extracted, so that getRealPath() is giving 'null', that is reason why i am seeking for alternative.
Thanks in Advance
SrinivasYes, that is the corrected behaviour.
What you need to do is to get the ServletContext, and then load the files as resources.
Here is how to load a properties file in the init() servlet method, which has access to the ServletConfig object that can give u the ServletContext.
String classesDir = "/WEB-INF/classes";
ServletContext sc = config.getServletContext();
InputStram is = sc.getResourceAsStream(classesDir+"default.properties");
props.load(is);
Hope it helps,
Liviu
Maybe you are looking for
-
How can I intro play / auto-skip songs after a set amount of play time?
I'm using iTunes on Windows 7 and I'm curious if there's a way, using iTunes itself or with a plug-in, to just intro play through my playlists. By this I mean, play only the first 30 seconds or so of each song before skipping to the next track. Any h
-
ttried to update my iphone 4 to ios5.......needed to update itunes....tried came up with windows inslaller .........removed itunes, now cannot install due to same windows inslaller problem, any ideas peeps......its doin my head in!!!!!!
-
Have upgraded to the latest SQL-Dev 3.1EA3 Connect to database, bring up table list, click the "+" symbol to view column list and an error "Your database connection has been reset. Any pending transactions or session state has been lost." Click ok. O
-
Hi, I am working on a web application using struts framework. I know Struts provides internationalization of messages and labels using MessageResources. I have a requirement that all the error messages (not the fields labels on the form) should come
-
Displaying data from multiple table/column
hello .. anybody can help me how to diplaying data from multiple table/ column in PHP. TQ