Team,
I am getting the exception on the line marked in Red. If I comment that
line, the marshalling works ( wothout the mapping info). But if I include
the mapping, I get the error.
The class being referenced in part of an application jar file called
common.jar, and is available in the same dir as Test.java
The classpath entry shows that the common.jar is set in the classpath.
C:\Projects\cvswork\vssweb\castorTest>dir
Volume in drive C has no label.
Volume Serial Number is 8C9E-8ADB
Directory of C:\Projects\cvswork\vssweb\castorTest
09/08/2003 05:26p <DIR> .
09/08/2003 05:26p <DIR> ..
06/03/2003 03:30p 1,141,033 castor-0.9.5-xml.jar
06/03/2003 03:30p 1,613,261 castor-0.9.5.jar
09/08/2003 04:49p 255 castor.properties
09/08/2003 04:49p 255 castor.properties.bak
09/08/2003 04:51p 24,560 common.jar
09/08/2003 10:27a 2,567 Copy of vssmapping.xml
07/30/2003 03:47a 445,345 dom4j.jar
09/08/2003 05:25p 296 runTest.cmd
09/08/2003 05:26p 150 setEnv.cmd
09/08/2003 05:25p 296 setEnv.cmd.bak
09/08/2003 05:26p 2,366 Test.class
09/08/2003 05:13p 2,756 Test.java
09/08/2003 05:12p 2,756 Test.java.bak
09/08/2003 04:07p 538 vssmapping.xml
09/08/2003 04:04p 538 vssmapping.xml.bak
15 File(s) 3,236,972 bytes
2 Dir(s) 27,528,147,456 bytes free
C:\Projects\cvswork\vssweb\castorTest>set classpath
classpath =
;./castor-0.9.5-xml.jar;./castor-0.9.5.jar;./common.jar;./dom4j.jar;c:\xmlli
bs\lib\crims
on.jar;c:\xmllibs\lib\xerces.jar;.;
C:\Projects\cvswork\vssweb\castorTest>
Do I need any additional configuration ?
Help would be appreciated.
Thanks,
Sathya
org.exolab.castor.mapping.MappingException: Could not find the class
java:com.cpships.vss.schedule.S
chedule
at
org.exolab.castor.mapping.loader.MappingLoader.createDescriptor(MappingLoade
r.java:341)
at
org.exolab.castor.xml.XMLMappingLoader.createDescriptor(XMLMappingLoader.jav
a:192)
at
org.exolab.castor.mapping.loader.MappingLoader.loadMapping(MappingLoader.jav
a:233)
at org.exolab.castor.mapping.Mapping.getResolver(Mapping.java:291)
at org.exolab.castor.mapping.Mapping.getResolver(Mapping.java:246)
at org.exolab.castor.xml.Marshaller.setMapping(Marshaller.java:512)
at Test.test(Test.java:56)
at Test.main(Test.java:74)
Test.java
import java.util.*;
import org.xml.sax.ContentHandler;
import org.exolab.castor.xml.Marshaller;
import org.exolab.castor.mapping.Mapping;
import org.apache.xml.serialize.*;
import com.cpships.vss.schedule.Schedule;
import com.cpships.vss.domain.Port;
import com.cpships.vss.domain.PortStop;
import java.io.*;
import java.net.*;
public class Test
{
public static final String mappingFile = "vssmapping.xml";
public void test() throws Exception{
System.out.println(" ............ 1 ");
System.out.println(" ............ 2 ");
//Mapping castorMapping = new
Mapping(getClass().getClassLoader());
Mapping castorMapping = new Mapping();
System.out.println(" ............ 3 mapping
getClass().getClassLoader() is " + getClass().getClassLoader() );
URL vssMappingURL =
getClass().getClassLoader().getResource("vssmapping.xml");
System.out.println(" the mapping url loaded
is "+ vssMappingURL );
castorMapping.loadMapping(vssMappingURL);
System.out.println(" ............ 4 ");
StringWriter sw2 = new StringWriter();
Marshaller marshaller = new
Marshaller(sw2);
System.out.println(" ............ 5 ");
marshaller.setMapping(castorMapping);
System.out.println(" ............ 6 ");
Schedule schedule = new Schedule();
schedule.setDirection("E");
System.out.println(" Schedule class loader
is " + schedule.getClass().getClassLoader());
System.out.println(" ............ 7 " +
schedule.getDirection());
marshaller.marshal( schedule, sw2 );
String xmlResult = sw2.toString();
System.out.println( "xmlResult ::: " + xmlResult );
}
public static void main( String[] args )
{
try
{
Test test = new Test();
test.test();
}
catch ( Exception except )
{
except.printStackTrace( System.out );
}
}
}
Mapping file..
<?xml version="1.0"?>
<!DOCTYPE mapping PUBLIC "-//EXOLAB/Castor Object Mapping DTD Version
1.0//EN"
"http://castor.exolab.org/mapping.dtd">
<mapping>
<class name="java:com.cpships.vss.schedule.Schedule">
<map-to xml="Schedule"/>
<field name="direction"
type="java.lang.String"
direct="true">
<bind-xml name="reference" node="attribute"/>
</field>
</class>
</mapping>
-----------------------------------------------------------
If you wish to unsubscribe from this mailing, send mail to
[EMAIL PROTECTED] with a subject of:
unsubscribe castor-dev