XML Schema mapping
Hi All ,
I have a reqirement from customer , I need to map the customer XML schma with RDBMS table , can we do this ? . can anyone help me out.
Thanks
Sreenivasulu K
Hi,
What do you mean by Schema mapping to a table?
From what I understood.. do you want to create a table whose columns corresponds to the elements of the schema?
The following link
http://otn.oracle.com/docs/products/oracle9i/doc_library/release2/appdev.920/a96620/xdb05obj.htm#1032016
specifies that Oracle does that for us. Then why do you want to do it again?
Correct me if Iam wrong.
Regards,
Anupama
Similar Messages
-
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 -
Error publishing plsql webservice (xml schema mapping and/or serializer)
Hi guys,
I'm with a problem when publishing plsql webservices from JDeveloper 11.
The scenario is something like this:
1) I have a connection with a database 9i, and the objects (packages, object types, etc) are all in there.
2) In this case, i can publish the package spec using the option "Publish as JAX-RPC Web Service" normally.
3) A database 11g was created, and i compiled the objects in this environment.
4) Then i've created a new connection with a database 11g.
5) In this case, when i'll publish the webservice, the error occurs: "The following types used by the program unit do not have an XML Schema mapping and/or serializer specified: REC_DMP_REMESSA"
I have no idea in how to solve this case. Someone can help?
Thank in advance.
Best Regards,
GustavoDuplicate of https://forums.oracle.com/thread/2610823
Timo -
Add new nodes to IDoc in IDoc-XML Schema Mapping with Java
Hello everyone, I'm not very sure if this is the right forum but I have a problem and I haven't being able to find the answer, my scenario is as follows:
-First of all our system characteristics: SAP ECC 6.0, SAP BASIS 700, PI BASIS 2005-1-700 and SAP APPL 600
-We are in Mexico and we are creating our own billing documents with digital signature and a digital certificate in XML format according to SAP Note 1303712 and all derived notes.
-Our actual schema is working fine: We generate our IDocs (one for SD and one for FI) in SAP and we send them to PI XI to be parsed by a JAVA program and then converted to XML.
Now we have the requirement to add new nodes (I might be wrong in the term, feel free to correct me) to the IDoc, it sounds very simple but I have only experience with ABAP and no experience with PI, also it's working only on our production landscape, so if I don't do it right it could be very dangerous.
I have already read the following notes that might help me: 1321680 and 1318342 but their configuration is just in the aplication server and don't mention anything about PI or the Java program.
So, if any one could provide me some kind of guide or important aspects that I should take care (like mapping, structures, etc) to enhance IDocs for this schema i would be very grateful.
I hope this post were clear enough, if it is not also feel free to ask me to clarify or provide more information.
Kind Regards
OmarHi Omar,
Since the structure of the IDoc is changing (adding a new node), you would need to do the following in PI:
1) Reimport the IDoc in ESR/IR of PI.
2) Change the mapping/transformation logic in the mapping parser defined. If it is a Java code, you would need to reimport it in the ESR/IR. Use link below to understand more on jave mapping.
http://wiki.sdn.sap.com/wiki/display/XI/BeginnersguidetoJavamappingusingDOMparserinSAPXI
3) Delete the IDoc cache using transaction IDX2, after the IDoc is reimported.
Regards,
Sanjeev. -
Mapping DTO to XML Schema for Worship Web Service
I have a number of DTOs that my application uses. This application
needs to consume a number of document style web services created in
workshop. When I generate the proxies for this web service, it creates
Java beans for the XML schema types defined in the web service.
Is there a way to get the workshop stubs to map my DTOs to XML schema?
If not, what is the best way to do this mapping? Thanks.
MikeI have a number of DTOs that my application uses. This application
needs to consume a number of document style web services created in
workshop. When I generate the proxies for this web service, it creates
Java beans for the XML schema types defined in the web service.
Is there a way to get the workshop stubs to map my DTOs to XML schema?
If not, what is the best way to do this mapping? Thanks.
Mike -
Mapping DTO to XML Schema for Workshop Web Service
I have a number of DTOs that my application uses. This application
needs to consume a number of document style web services created in
workshop. When I generate the proxies for this web service, it creates
Java beans for the XML schema types defined in the web service.
Is there a way to get the workshop stubs to map my DTOs to XML schema?
If not, what is the best way to do this mapping? Thanks.
MikeI have a number of DTOs that my application uses. This application
needs to consume a number of document style web services created in
workshop. When I generate the proxies for this web service, it creates
Java beans for the XML schema types defined in the web service.
Is there a way to get the workshop stubs to map my DTOs to XML schema?
If not, what is the best way to do this mapping? Thanks.
Mike -
Mapping CLOB and Long in xml schema
Hi,
I am creating an xml schema to map some user defined database objects. For example, for a column which is defined as VARCHAR2 in the database, I have the following xsd type mapping.
<xsd:element name="Currency" type="xsd:string" />
If the oracle column is CLOB or Long(Oracle datatype), could you please tell me how I can map it in the xml schema? I do not want to use Oracle SQL type like:
xdb:SQLType="CLOB" since I need a generic type mapping to CLOB. Would xsd:string still hold good for CLOB as well as Long(Oracle datatype) ?
Please help.
Thanks,
Vadi.The problem is that LONGs are not buffered but are read from the wire in the order defined. The problem is the same as
rs = stmt.executeQuery("select myLong, myNumber from tab");
while (rs.next()) {
int n = rs.getInt(2);
String s = rs.getString(1);
The above will fail for the same reason. When the statement is executed the LONG is not read immediately. It is buffered in the server waiting to be read. When getInt is called the driver reads the bytes of the LONG and throws them away so that it can get to the NUMBER and read it. Then when getString is called the LONG value is gone so you get an exception.
Similar problem here. When the query is executed the CLOB and BLOB locators are read from the wire, but the LONG is buffered in the server waiting to be read. When Clob.getString is called, it has to talk to the server to get the value of the CLOB, so it reads the LONG bytes from the wire and throws them away. That clears the connection so that it can ask the server for the CLOB bytes. When the code reads the LONG value, those bytes are gone so you get an exception.
This is a long standing restriction on using LONG and LONG RAW values and is a result of the network protocol. It is one of the reasons that Oracle deprecates LONGs and recommends using BLOBs and CLOBs instead.
Douglas -
Mapping with xml-schema XML-data to relational tables
Hello,
is it possible to map data from xml documents to relational tables with xml-schema?
I mean not in nested tables but in relational tables with primary and foreign keys!
With SQL Server 2005 it is very easy, I dont believe that Oracle couldn't do this!
I searched but i cant find anything about that!
Thx
user445232indeed, oracle does this for xml schema based xmltype data, however, these underlying tables are not accessable to the application. Maybe It should for next version, so folks who like to use relational model can use it without mapping it manually.
Actually, nested tables, are the same, their underlying tables (segments) are indeed relational tables, oracle manages them internally and not visiable to the application. You can find them in the user_segments, user_objects views though. -
Syndication mapping when changing XML schema
I have used a ARTMAS04 XML schema and done mapping in the syndicator and saved the map. Then we are doing changes i SAP R/3 and need to add some extentions in the IDOC and therefor also the XML schema. I then add my new schema with the extentions into the the syndicator, and try to open the mapping. Then the mapping is done using the old schema. This means that if I do a change in an XML schema, I need to to map everything from scratch. Does anyone have a solution to this problem?
Regards John-KjellHi John,
The maps saves not only the mappings but also the destination properties for that particular scenario.
Hence as soon as you change the destination properties i.e your XML schema, and try to open your old map which is using different XML schema your changes will be lost and you will end up with using old XML schema only.
As far as i know, to handle this situation you have to do all the mappings again.
Hope this helps.
Regards,
Pooja -
Null value for int and datetime date type in xml schema
hi:
I am embarrassed by a qustion in xml schema; i defined a xml schema file like
this:
<elementFormDefault="qualified" attributeFormDefault="qualified">
<xs:element name="test">
<xs:annotation>
<xs:documentation>Comment describing your root element</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="name" type="xs:string"/>
<xs:element name="password" type="xs:string" nillable="true"/>
<xs:element name="user" type="xs:int" nillable="true"/>
<xs:element name="s_time" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
and I send this file to workflow clientrequest() node, I wanted to receive data
in this schema file.but when i send null value to the element "user" and "s_time"
in workshop test tool(test soap),and use function in xmlbean like isNilUser or
isNilStime, one error occur.
I don't kown why, I had to ask the engineer of bea in china, one told me a bug.
is that true?Visakh16 I cant agree more with you on it, it is good but in production u cant have them change maxrows. I think
Patrick Hurst is a better option. debug the package have it running and move up
Please mark as helpful and propose as answer if you find this as correct!!! Thanks,Dia Agha .
Hmm..Why do you need to change it in production?
What I suggested was to tweak the setting in dev machine so that it interprets the Excel file datatypes correctly when doing development. Once mapping is set correctly then it will work fine when in production or in any other environment. The tweaking is
just to make sure it interprets the datatype correctly at design time and has nothing to do with production deployment
Please Mark This As Answer if it solved your issue
Please Mark This As Helpful if it helps to solve your issue
Visakh
My MSDN Page
My Personal Blog
My Facebook Page -
Unable to locate Spring NamespaceHandler for XML schema namespace
I am not sure if this is the best practice approach but this is the problem I am ruining into. Below, I explain what I am doing:
1) What I am doing:
=============
Based on the oracle incubator example (http://coherence.oracle.com/display/INCUBATOR/Processing+Pattern+Examples); I am running a server and submitting tasks through a proxy application that submits them to ProcessingPatternConfigurator; let's call my task processReport.
a) my processReport is using spring and ibatis together, I created a utility static class to obtain a spring context and retrieves beans using the following lines ( see exhibit "A1 and A2" below).
b) when my task calls the context and that spring loads, it is failing with the error show in exhibit "B".
I suspect I am missing a lib? I googled the error and searched you site but could find a meaningful discussion on it. I guess my question is if this is not the best approach, how do I integrated with spring initializing beans and setting up ibatis framwork, providing beans and database access through Ibatis for each task ruining on the grid (processReport).
thanks
A1) processReport (submitted in the grid) uses this line
AbstractXmlApplicationContext ctx = (AbstractXmlApplicationContext) AmrContextUtil.getInstance();
System.out.println("Classpath loaded. Executing Report...");
ReportProcessor repProcessor = (ReportProcessor) ctx.getBean("reportProcessor");
A2) Here is the AmrContextUtil:
import org.springframework.context.support.AbstractApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public final class AmrContextUtil {
private static AbstractApplicationContext ctx = null;
public AmrContextUtil() {
super();
public final static synchronized AbstractApplicationContext getInstance(){
if (ctx == null){
ctx = new ClassPathXmlApplicationContext("classpath:config/applicationContext.xml");
setCtx(ctx);
return ctx;
public final static synchronized AbstractApplicationContext getCtx() {
return ctx;
public final static synchronized void setCtx(AbstractApplicationContext ctx) {
AmrContextUtil.ctx = ctx;
B) Here is the error reported by the server:
2010-02-10 15:42:28.312/57.986 Oracle Coherence GE 3.5.2/463 <Warning> (thread=GridExecutor:Thread-2
, member=1): TaskRunner - Failed to process 0x00000126B99E5524AC1F007AAB1587BBCFEC5E6637E1DED6CCB984
03D6AADF4D due to:org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Failed to import bean definitions from URL location [classpath:config/reports-application.xml] Offending resource: class path resource [config/applicationContext.xml]; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: Unexpected failure during bean definition parsing
Offending resource: class path resource [config/reports-application.xml] Bean 'reportSqlMapConfig'; nested exception is org.springframework.beans.factory.parsing.BeanDefinitionParsingException: *Configuration problem: Unable to locate Spring NamespaceHandler for XML schema namespace [http://www.springframework.org/schema/util]*
*Offending resource: class path resource [config/reports-application.xml] Bean 'reportSqlMapConfig'*
-> Property 'resourceMap'
c)Here is my application-context.xml offending line:
<bean id="reportSqlMapConfig"
class="com.xx.report.generator.ReportSqlMapConfig">
<property name="resourceMap">
<map>
<entry>
<key>
<util:constant static-field="com.xx.report.domain.ReportType.FPA"/>
</key>
<value>classpath:config/diehardReportSqlMapConfig.xml</value>
</entry>
<entry>
<key>
<util:constant static-field="com.xx.report.domain.ReportType.FCN"/>
</key>
<value>classpath:config/falconReportSqlMapConfig.xml</value>
</entry>
<entry>
<key>
<util:constant static-field="com.xx.report.domain.ReportType.ODS"/>
</key>
<value>classpath:config/odsReportSqlMapConfig.xml</value>
</entry>
</map>
</property>
</bean>My guess is that something is broken in the configuration of the cacheServer and its not finding
all of the dependencies that your process pattern application needs. Probably the best way
to debug this stuff is to define a static main in your runnable task which will make the call
to the run() method and invoke it as the main class using the identical settings (classpath,
run directory) that you are using to launch the Coherence cache server.
Regards,
Bob -
XML Schema file in data definition
Hi,
I am creating a custom RTF template for a seeded data definition in the eBusiness Suite. The data definition has an XML Schema file loaded however this does not include all the data required for the template. Running the report to just generate the XML (i.e. no template) I can see that the additional data is available at this level just not included in the XSD.
I have built the template including the additional elements from the XML and expected to have to create a custom data definition as well to add the additional elements to the XSD. However the template is working against the seeded definition and successfully picking up the elements that are not included in the XSD.
Has anybody else come across this situation? And are there any potential issues? I could create a custom data definition as well to load an amended XSD but this would be a more invasive change as it would involve end dating the seeded data definition which I would prefer not to do. The report is not being generated from a concurrent request so I cannot just create a custom request and leave the seeded report untouched.
Thanks,
SarahThe XML Schema is only required if you are using a PDF template (the template file itself is PDF) with field-mapping. For other template types the schema is optional.
The XML Schema is used to define a "class" of XML documents, so to speak. The define the semantics and structure of the XML documents more thoroughly.
If you have closely related reports, you could use a single schema to standardize (in a sense) the XML to be output from the class of related reports. In that case you could have a single schema file uploaded to multiple reports/data-definitions.
The W3C has good documentation on XML Schema.
If you want to see samples, you can use tools such as dtd2xs to create sample schemas from your DTD. -
I have generated my Web Service Client Control Class based on WSDL file provided by Web Service Provider using JAX-RPC in "Oracle Workshop for WebLogic version 10.3".
I am using Web Service Client Control class in WebLogic Portal portlet backing class to invoke Web Service. But while invoking Web Service, I am getting following error:
Caused by: java.rmi.RemoteException: Failed to invoke; nested exception is:
javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementweblogic.xml.schema.binding.SerializationException: mapping lookup failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://xyz.com/abc/UpdateSR']:updateSRRequest}
Here is the code of my Portlet Backing class where I am using Service Control to invoke Web Service:
URL webServiceUrl = new URL(webServiceLocation);
ServiceFactory serviceFactory = ServiceFactory.newInstance();
QName qName = new QName(nameSpaceURI, serviceName);
Service siebelService = serviceFactory.createService(webServiceUrl, qName);
updateSRServiceControl siebelServiceProxy = (updateSRServiceControl)siebelService.getPort(qName, updateSRServiceControl.class);
UpdateSRResponse updateSRResponse = siebelServiceProxy.updateSR(updateSRRequest);
Please let me know if more information required.
I appreciate for help.
Thanks in advance.
Regards
NeerajI have generated my Web Service Client Control Class based on WSDL file provided by Web Service Provider using JAX-RPC in "Oracle Workshop for WebLogic version 10.3".
I am using Web Service Client Control class in WebLogic Portal portlet backing class to invoke Web Service. But while invoking Web Service, I am getting following error:
Caused by: java.rmi.RemoteException: Failed to invoke; nested exception is:
javax.xml.soap.SOAPException: failed to serialize interface javax.xml.soap.SOAPElementweblogic.xml.schema.binding.SerializationException: mapping lookup failure. class=interface javax.xml.soap.SOAPElement class context=TypedClassContext{schemaType=['http://xyz.com/abc/UpdateSR']:updateSRRequest}
Here is the code of my Portlet Backing class where I am using Service Control to invoke Web Service:
URL webServiceUrl = new URL(webServiceLocation);
ServiceFactory serviceFactory = ServiceFactory.newInstance();
QName qName = new QName(nameSpaceURI, serviceName);
Service siebelService = serviceFactory.createService(webServiceUrl, qName);
updateSRServiceControl siebelServiceProxy = (updateSRServiceControl)siebelService.getPort(qName, updateSRServiceControl.class);
UpdateSRResponse updateSRResponse = siebelServiceProxy.updateSR(updateSRRequest);
Please let me know if more information required.
I appreciate for help.
Thanks in advance.
Regards
Neeraj -
PL/SQL web service - how to use XML schema to define inputs/outputs?
Hello,
let us say I want to publish a PL/SQL web service. The package spec that I want to expose is:
CREATE OR REPLACE PACKAGE myWebService AS
FUNCTION loadResults(
username IN VARCHAR2,
password IN VARCHAR2,
resultData IN XMLType)
RETURN XMLType;
END;When I use JDeveloper's wizard to publish my PL/SQL web service, the resulting WSDL contains this:
<schema
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:soap11-enc="http://schemas.xmlsoap.org/soap/encoding/"
xmlns:tns="http://uk/co/weatherbys/aapws/AAPWS.wsdl/types/"
targetNamespace="http://uk/co/weatherbys/aapws/AAPWS.wsdl/types/"
elementFormDefault="qualified">
<element name="loadresultsElement">
<complexType>
<sequence>
<element name="username" type="string" nillable="true"/>
<element name="password" type="string" nillable="true"/>
<element name="resultdata" nillable="true">
<complexType>
<sequence>
<any/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
<element name="loadresultsResponseElement">
<complexType>
<sequence>
<element name="result" nillable="true">
<complexType>
<sequence>
<any/>
</sequence>
</complexType>
</element>
</sequence>
</complexType>
</element>
</schema>It is specifying that anything at all can be passed in and out from the two XMLType arguments, which is fair enough: it has no way of knowing what I am expecting and what I shall return.
My question is, how do I tell JDeveloper that actually I want either or both of those XMLTypes to conform to a particular XML schema?You cannot format the date as a string, unless you do the conversion on the PL-SQL side, before you use it in your WebService mapping. It should be handled as a string.
The only way to convert the XML from SOAP, using this encoding, into literal XML is to apply XSLT to the payload. Not sure why you would like to do this, as the payload should be consumed by another SOAP-awared stack.
Hope this helps,
Eric -
Hi all,
I just got a copy of the book "Pro SQL Server 2008 XML" written by Michael Coles (published by Apress) and try to learn the XML Schema Collection in my SQL Server 2012 Management Studio (SSMS2012). I studied Chapter 4 XML Collection of the book
and executed the following code of Listing 4-8 Complex Schema with Attribute:
-- Pro SQL Server 2008 XML by Michael Coles (Apress)
-- Listing04-08.sql Complex XML Schema with Attribute
-- shcColes04-08.sql saved in C:\\Documents\XML_SQL_Server2008_code_Coles_Apress
-- 6 April 2015 8:00 PM
CREATE XML SCHEMA COLLECTION dbo.ComplexTestSchemaCollection_attribute
AS
N'<?xml version="1.0"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="item">
<xs:complexType>
<xs:sequence>
<xs:element name="name" />
<xs:element name="color" />
<xs:group ref="id-price" />
<xs:group ref="size-group" />
</xs:sequence>
<xs:attribute name="id" />
<xs:attribute name="number" />
</xs:complexType>
</xs:element>
<xs:group name="id-price">
<xs:choice>
<xs:element name="list-price" />
<xs:element name="standard-cost" />
</xs:choice>
</xs:group>
<xs:group name="size-group">
<xs:sequence>
<xs:element name="size" />
<xs:element name="unit-of-measure" />
</xs:sequence>
</xs:group>
</xs:schema>';
GO
DECLARE @x XML (dbo.ComplexTestSchemaCollection_attribute);
SET @x = N'<?xml version="1.0"?>
<item id="749" number="BK-R93R-62">
<name>Road-150 Red, 62</name>
<color>Red</color>
<list-price>3578.27</list-price>
<size>62</size>
<unit-of-measure>CM</unit-of-measure>
</item>';
SELECT @x;
GO
DROP XML SCHEMA COLLECTION dbo.ComplexTestSchemaCollection_attribute;
It worked nicely. But, I just found out the coding that was downloaded from the website of Apress and I just executed was different from the coding of Listing 4-8 listed in the book: all the <xs: ....> and </xs: ..> in my SSMS2012 are
listed as <xsd:...> and </xsd:...> respectively in the book!!?? The same thing happens in the Listing 4-3 Simple XML Schema, Listing 4-5 XML Schema and Valid XML Document with Comple Type Definition, Listion 4-6 XML Schema and XML
Document Document with Complex Type Using <sequence> and <choice>, and Listing 4-7 Complex XML Schema and XML Document with Model Group Definition (I executed last week) too. I wonder: should xs or xsd be used in the XML
Schema Collection of SSMS2012? Please kindly help, clarify this matter and explain the diffirence of using xs and xsd for me.
Thanks in advance,
Scott ChangHi Scott,
Using xs or xsd depends on how you declare the namespace prefix.
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="item">
I've posted a very good link in your last question, just in case you might have missed it, please see the below link.
Understanding XML Namespaces
In an XML document we use a namespace prefix to qualify the local names of both elements and attributes . A prefix is really just an abbreviation for the namespace identifier (URI), which is typically quite long. The prefix is first mapped to a namespace
identifier through a namespace declaration. The syntax for a namespace declaration is:
xmlns:<prefix>='<namespace identifier>'
If you have any question, feel free to let me know.
Eric Zhang
TechNet Community Support
Maybe you are looking for
-
How do I cut an image in half and move the halves independently?
How do I cut an image in half, and move the halves independently?
-
Over the years I have used LR and then drifted back to iPhoto and PSE, but now want to commit to LR 3. I am combining several family members photos in one place. My stuff: iMac 21.5 (3.06 Gh, ATI graphics), 4G mem., 1TB, backed up to 500G HD and Mo
-
Hi Im using a TreeSelectionListener to get when the user changes the name of one of the nodes of the tree. I dont know if the correct behaviour is the one I'm getting, but I only get the new name typed when the user press enter AND selects another no
-
Restart deployment (.ear) does not load optional package
Hello everybody, In our 10.3.5 WLS domains, we are using optional packages for sharing libraries between applications see [http://docs.oracle.com/cd/E24329_01/web.1211/e24368/libraries.htm|Creating Shared Java EE Libraries and Optional Packages] The
-
Can I host a Windows Phone VHS on a remote host and have Visual Studio debug on it?
As per the title really, is it possible to have an instance of the windows phone emulator running on our Hyper-V dev cluster and then have development machines use it for debugging? Our development machines are also virtualised, and as such we can't