/** * * Copyright (c) 2001 ebXMLsoft Inc. All rights reserved. * */ import javax.sql.*; import java.util.*; import java.io.*; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.DriverManager; import org.xml.sax.ContentHandler; import org.exolab.castor.jdo.*; import org.exolab.castor.util.*; import org.exolab.castor.xml.*; import org.exolab.castor.mapping.Mapping; import org.apache.xml.serialize.*; import asn.*; public class Asn { // database configuration file public static final String DatabaseFile = "database.xml"; // mapping file public static final String MappingFile = "mapping.xml"; private Mapping _mapping; private JDO _jdo; private AdvanceShippingNotice _advanceShippingNotice; private Container _container; private Product _product; public void Prepenv( PrintWriter writer ) throws Exception { // Load the mapping file _mapping = new Mapping( getClass().getClassLoader() ); _mapping.setLogWriter( writer ); _mapping.loadMapping( getClass().getResource( MappingFile ) ); _jdo = new JDO(); _jdo.setLogWriter( writer ); _jdo.setConfiguration( getClass().getResource( DatabaseFile ).toString() ); _jdo.setDatabaseName( "ebdb" ); } public void run( PrintWriter writer ) throws Exception { Database db; Container container; AdvanceShippingNotice advanceShippingNotice; QueryResults results; QueryResults resultsContainer; QueryResults resultsShippedProduct; db = _jdo.getDatabase(); writer.println( "Begin transaction" ); System.out.println("Unmarshalling Advance Shipping Notice"); _advanceShippingNotice = AdvanceShippingNotice.unmarshal(new FileReader("asn.xml")); // Insert loadshipment db.begin(); writer.println( "Insert Advance Shipping Notice ..." ); db.create(_advanceShippingNotice); db.commit(); // Insert supply chain locations db.begin(); writer.println( "Insert supply chain locations" ); FromLocation fromLocation = _advanceShippingNotice.getFromLocation(); fromLocation.setAdvanceShippingNotice(_advanceShippingNotice); db.create(fromLocation); ToLocation toLocation = _advanceShippingNotice.getToLocation(); toLocation.setAdvanceShippingNotice(_advanceShippingNotice); db.create(toLocation); db.commit(); Container[] contList = _advanceShippingNotice.getContainer(); for (int i=0; i