|
Hi,
Can anybody tell me why I get a null pointer with the following?
ResponseBatch XSD
<?xml version="1.0" encoding="UTF-8"?> <xs:schema targetNamespace="http://infor.com/FactsResponseBatch" elementFormDefault="qualified" xmlns:cd="http://infor.com/FactsCodeData" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:import namespace="http://infor.com/FactsItemBalance" schemaLocation="ItemBalance.xsd"/> <xs:import namespace="http://infor.com/FactsCodeData" schemaLocation="CodeData.xsd"/>
<xs:element name="ResponseBatch"> <xs:complexType> <xs:sequence> <xs:element name="Response" type="cd:Response" maxOccurs="unbounded"/>
</xs:sequence> <xs:attribute name="ConsumerKey" type="xs:string"/> <xs:attribute name="Language" type="xs:string"/> <xs:attribute name="DateTime" type="xs:string"/> <xs:attribute name="SerialID" type="xs:string"/> </xs:complexType> </xs:element> </xs:schema>
CodeData XSD
<?xml version="1.0" encoding="UTF-8"?> <xs:schema targetNamespace="http://infor.com/FactsCodeData" elementFormDefault="qualified" xmlns:tns="http://infor.com/FactsCodeData" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="Response"> <xs:sequence> <xs:element name="Codes" type="tns:Codes"/> <xs:element name="RestartPoint" type="xs:string"/> </xs:sequence> <xs:attribute name="RequestID" type="xs:string"/> <xs:attribute name="Company" type="xs:int"/> <xs:attribute name="SerialID" type="xs:string"/> </xs:complexType>
<xs:complexType name="Codes"> <xs:sequence> <xs:choice maxOccurs="unbounded"> <xs:element name="Code" type="tns:Code"/> </xs:choice> </xs:sequence> </xs:complexType>
<xs:complexType name="Code"> <xs:sequence> <xs:element name="Code" type="xs:string"/> <xs:element name="Description" type="xs:string"/> <xs:element name="ParentCode" type="xs:string"/> </xs:sequence> </xs:complexType>
</xs:schema>
TestCodes.Java
package webserver;
import com.infor.factsResponseBatch.ResponseBatchDocument;
import com.infor.factsResponseBatch.ResponseBatchDocument.ResponseBatch;
import com.infor.factsCodeData.Response; import com.infor.factsCodeData.Codes; import com.infor.factsCodeData.Code; import java.io.File;
public class TestGLCodes2 {
public static void main ( String[] args ) throws Exception { System.out.println("ITS RUNNING!!!");
// load the xml instance into the store and return a // strongly typed instance of StatementDocument ResponseBatchDocument stmtDoc = ResponseBatchDocument.Factory.parse( new File( "C:\\FACTSXML\\XML\\GlCodes2.xml"));
ResponseBatchDocument.ResponseBatch ResponseBatchElement = stmtDoc .getResponseBatch();
System.out.println("ValidateCustomer details " + ", Consumer ID = " + ResponseBatchElement.getConsumerKey() + ", Language = " + ResponseBatchElement.getLanguage() + ", Date/Time = " + ResponseBatchElement.getDateTime() + ", Serial ID = " + ResponseBatchElement.getSerialID());
ResponseBatch stmt = stmtDoc.getResponseBatch(); Response[] responses = stmt.getResponseArray();
System.out.println("Total Responses " + responses.length);
for ( int i = 0 ; i < responses.length ; i++ ){
System.out.println( responses[ i ].getRequestID()); System.out.println( responses[ i ].getCompany()); System.out.println( responses[ i ].getSerialID());
System.out.println("Before Get Codes "); Codes codes = responses[ i ].getCodes(); System.out.println("Before GetCode Array "); Code[] code = codes.getCodeArray();
System.out.println("Before the loop ");
for ( int j = 0 ; j < code.length ; j++ ){
System.out.println( code[ j ].getCode()); System.out.println( code[ j ].getDescription()); System.out.println( code[ j ].getParentCode()); } } } }
GLCodes2.xml
<?xml version="1.0" encoding="UTF-8"?> <ResponseBatch xmlns="http://infor.com/FactsResponseBatch" ConsumerKey="1234" Language="English" DateTime="today" SerialID="0011111"> <Response xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tns="http://infor.com/FactsCodeData" RequestID="CodeData" SerialID="54321" Company="12"> <Codes> <Code> <Code>Code Value </Code> <Description>Description Value</Description> <ParentCode>Parent Code Value</ParentCode> </Code> </Codes> <RestartPoint>abcdefg</RestartPoint> </Response> </ResponseBatch>
Richard Butterwood | Senior Analyst/Programmer | Infor | office: 770-418-2000 X 1167 | cell: 678-492-3080 | fax: 770-418-2022 | [EMAIL PROTECTED]
SAVE THE DATE:
|

