Hello,

Actually I have several newbie questions, as I'm not sure I know what I'm doing 
with Castor, but the final message in the log (attached) is where I finally hit 
the wall.

I'm trying to:
1. Generate necessary objects from a xsd schema (attached). To this effect I'm 
using the below command


java -classpath 
.;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\castor-1.2\castor-1.2-codegen.jar;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\castor-1.2\castor-1.2.jar;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\castor-1.2\castor-1.2-xml.jar;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\commons-logging-1.1.1.jar;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\castor-1.2\castor-1.2-xml-schema.jar;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\castor-1.2\castor-1.2-ddlgen.jar;C:\Progra~1\Java\jdk1.6.0_11\jre\lib\ext\velocity-1.6.2.jar
 org.exolab.castor.builder.SourceGeneratorMain -i Resources\promo3_4.xsd 
-package nikonpromosystem -gen-mapping promomap -verbose

Here there's two issues: First the map doesn't get generated, even though the 
command executes without errors. Second of all I get my objects in 4 different 
packages:

nikonpromosystem
nikonpromosystem.descriptors
nikonpromosystem.types
nikonpromosystem.types.descriptors

In classes.txt there's the listing of all the classes generated. Definitelly 
more than I expected from the xsd. Nevertheless I tried to use those classes in 
my code, using the code examples without the mapping 
(castor-reference-guide-1.3 sections 1.8.2.2 & 1.8.2.3.2) . Here's the code:


private Unmarshaller unmarshaller;
private Marshaller marshaller;
private XMLContext context;
private static Logger log;
private XMLClassDescriptorResolver classDescriptorResolver;
private nikonpromosystem.PromoCall promocall ;

promocall = new nikonpromosystem.PromoCall();
   String[] s = new 
String[]{"nikonpromosystem","nikonpromosystem.descriptors","nikonpromosystem.types","nikonpromosystem.types.descriptiors"};
context = new XMLContext();
try {
       context.addPackages(s);                          //that's where the 
error happens;
} catch (ResolverException ex) {   log.error(ex);}

unmarshaller = context.createUnmarshaller();
marshaller = context.createMarshaller(); 
 
reader = new FileReader("sample.xml");
promocall = (nikonpromosystem.PromoCall) unmarshaller.unmarshal(reader);   


I also tried to replace the XMLContext with classDescriptorResolver bat that 
also failed:

promocall = new nikonpromosystem.PromoCall();
classDescriptorResolver = 
(org.exolab.castor.xml.XMLClassDescriptorResolver)ClassDescriptorResolverFactory.createClassDescriptorResolver(BindingType.XML);
    
classDescriptorResolver.setClassLoader(promocall.getClass().getClassLoader());  
    //NullPointerException

I also tried generating the mapping from within the code using the MappingTool, 
but...:

MappingTool tool = new MappingTool();
promocall = new nikonpromosystem.PromoCall();
tool.addClass(promocall.getClass());    //NullPointerException

At this point I don't know what else I can try... Help?


Lukasz.





Attachment: PS.log
Description: PS.log

<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid XML Studio 6.1.18.0 - FREE Community Edition (http://www.liquid-technologies.com)-->
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema";>
  <xs:element name="PromoCall" type="PromoCallType" />
  <xs:complexType name="PromoCallType">
    <xs:sequence>
      <xs:element name="PromoCallID" type="JobIdentificationType" />
      <xs:element minOccurs="0" maxOccurs="1" name="Account" type="AccountType" />
      <xs:element minOccurs="0" maxOccurs="1" name="JobType">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="RX" />
            <xs:enumeration value="CUSTCOAT" />
            <xs:enumeration value="BULKSTK" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="1" name="JobSource">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="INTERNAL" />
            <xs:enumeration value="REMOTE" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ForcedPromotions" type="PromotionType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="LensItems" type="LensType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="AddedValueItems" type="AddedValueType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="PromoOutput" type="PromotionType" />
    </xs:sequence>
    <xs:attribute name="promoStatus">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="NOPROMOAPPLICABLE" />
          <xs:enumeration value="PROMOAPPLICABLE" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="AccountType">
    <xs:sequence>
      <xs:element name="billToAccount" type="xs:string" />
      <xs:element name="accountName" type="xs:string" />
      <xs:element name="Address" type="AddressType" />
      <xs:element name="SalesRep" type="SalesRepType" />
      <xs:element name="BuyingGroup" type="BuyingGroupType" />
      <xs:element name="Chain" type="ChainType" />
      <xs:element name="BusinessType" type="xs:string" />
      <xs:element name="PreferedLanguage">
          <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="FRA" />
            <xs:enumeration value="ENG" />
          </xs:restriction>
        </xs:simpleType>
     </xs:element>
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="AddressType">
    <xs:sequence>
      <xs:element name="Address1" type="xs:string" />
      <xs:element name="Address2" type="xs:string" />
      <xs:element name="City" type="xs:string" />
      <xs:element name="Province" type="xs:string" />
      <xs:element name="PostalCode" type="xs:string" />
      <xs:element name="Region" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="SalesRepType">
    <xs:sequence>
      <xs:element name="ID" type="xs:string" />
      <xs:element name="Name" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="BuyingGroupType">
    <xs:sequence>
      <xs:element name="ID" type="xs:string" />
      <xs:element name="Name" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ChainType">
    <xs:sequence>
      <xs:element name="ID" type="xs:string" />
      <xs:element name="Name" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="JobIdentificationType">
    <xs:sequence minOccurs="1" maxOccurs="1">
      <xs:element name="jobNumber" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PromotionType">
    <xs:sequence minOccurs="1" maxOccurs="1">
      <xs:element name="promoSource">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="ORDERENTRY" />
            <xs:enumeration value="PROMOSYSTEM" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="promotionID" type="xs:string" />
      <xs:element name="promotionName" type="xs:string" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="ExtraParameters" type="PromoParameterType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="PromoParameterType">
    <xs:sequence>
      <xs:element name="parameterName" type="xs:string" />
      <xs:element name="parameterType">
        <xs:simpleType>
          <xs:restriction base="xs:string">
            <xs:enumeration value="IMAGEPATH" />
            <xs:enumeration value="INVOICEMESSAGE" />
            <xs:enumeration value="AGENTMESSAGE" />
            <xs:enumeration value="INPUTPARAMETER" />
          </xs:restriction>
        </xs:simpleType>
      </xs:element>
      <xs:element name="parameterValue" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="LensType">
    <xs:sequence>
      <xs:element name="lensID" type="xs:string" />
      <xs:element name="lensName" type="xs:string" />
      <xs:element name="lensProductLineName" type="xs:string" />
      <xs:element name="Coating" type="AddedValueType" />
      <xs:element name="Material" type="MaterialType" />
      <xs:element name="Manufacturer" type="ManufacturerType" />
      <xs:element minOccurs="0" maxOccurs="unbounded" name="AddedValues" type="AddedValueType" />
      <xs:element name="LensBilling" type="BillingType" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="MaterialType">
    <xs:sequence>
      <xs:element name="materialID" type="xs:string" />
      <xs:element name="materialName" type="xs:string" />
      <xs:element name="indexOfRefraction" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="ManufacturerType">
    <xs:sequence>
      <xs:element name="manufacturerID" type="xs:string" />
      <xs:element name="manufacturerName" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="AddedValueType">
    <xs:sequence>
      <xs:element name="addedValueID" type="xs:string" />
      <xs:element name="addedValueName" type="xs:string" />
      <xs:element name="AddedValueBilling" type="BillingType" />
    </xs:sequence>
    <xs:attribute name="source">
      <xs:simpleType>
        <xs:restriction base="xs:string">
          <xs:enumeration value="PROMOSYSTEM" />
          <xs:enumeration value="ORDERSYSTEM" />
        </xs:restriction>
      </xs:simpleType>
    </xs:attribute>
  </xs:complexType>
  <xs:complexType name="BillingType">
    <xs:sequence>
      <xs:element name="quantity" type="xs:float" />
      <xs:element name="ListPrice" type="MonetaryUnitType" />
      <xs:element name="PromoDiscountAmount" type="MonetaryUnitType" minOccurs="0" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="MonetaryUnitType">
    <xs:attribute name="scale" type="xs:int" />
    <xs:attribute name="precision" type="xs:int" />
    <xs:attribute name="currencyAbbr" type="xs:string" />
  </xs:complexType>
  <xs:complexType name="PromoImageType">
    <xs:sequence>
      <xs:element name="imageID" type="xs:string" />
      <xs:element name="imagePath" type="xs:string" />
    </xs:sequence>
  </xs:complexType>
  <xs:complexType name="InvoiceMessageType" />
</xs:schema>
 Volume in drive C is OS
 Volume Serial Number is F4BF-C4C5

 Directory of C:\MagooDev\java\Nikon Promo System\src\nikonpromosystem

23/04/2009  12:19 PM    <DIR>          .
23/04/2009  12:19 PM    <DIR>          ..
24/04/2009  03:13 PM             3,114 .castor.cdr
24/04/2009  03:13 PM             3,350 Account.java
24/04/2009  03:13 PM             8,271 AccountType.java
24/04/2009  03:13 PM             3,390 AddedValueBilling.java
24/04/2009  03:13 PM             3,394 AddedValueItems.java
24/04/2009  03:13 PM             3,378 AddedValues.java
24/04/2009  03:13 PM             6,044 AddedValueType.java
24/04/2009  03:13 PM             3,350 Address.java
24/04/2009  03:13 PM             6,691 AddressType.java
24/04/2009  03:13 PM             5,770 BillingType.java
24/04/2009  03:13 PM             3,382 BuyingGroup.java
24/04/2009  03:13 PM             4,449 BuyingGroupType.java
24/04/2009  03:13 PM             3,334 Chain.java
24/04/2009  03:13 PM             4,407 ChainType.java
24/04/2009  03:13 PM             3,362 Coating.java
21/04/2009  03:31 PM    <DIR>          descriptors
24/04/2009  03:13 PM             3,410 ExtraParameters.java
24/04/2009  03:13 PM             3,394 ForcedPromotions.java
24/04/2009  03:13 PM             3,392 InvoiceMessageType.java
24/04/2009  03:13 PM             4,085 JobIdentificationType.java
24/04/2009  03:13 PM             3,366 LensBilling.java
24/04/2009  03:13 PM             3,346 LensItems.java
24/04/2009  03:13 PM            12,484 LensType.java
24/04/2009  03:13 PM             3,378 ListPrice.java
24/04/2009  03:13 PM             3,390 Manufacturer.java
24/04/2009  03:13 PM             4,767 ManufacturerType.java
24/04/2009  03:13 PM             3,358 Material.java
24/04/2009  03:13 PM             5,309 MaterialType.java
24/04/2009  03:13 PM             5,964 MonetaryUnitType.java
24/04/2009  03:13 PM             3,366 PromoCall.java
24/04/2009  03:13 PM             3,405 PromoCallID.java
24/04/2009  03:13 PM            26,592 PromoCallType.java
24/04/2009  03:13 PM             3,418 PromoDiscountAmount.java
24/04/2009  03:13 PM             4,572 PromoImageType.java
24/04/2009  03:13 PM             3,374 PromoOutput.java
24/04/2009  03:13 PM             5,428 PromoParameterType.java
24/04/2009  03:13 PM            10,491 PromotionType.java
24/04/2009  03:13 PM             3,358 SalesRep.java
24/04/2009  03:13 PM             4,428 SalesRepType.java
21/04/2009  03:35 PM    <DIR>          types
              38 File(s)        193,761 bytes

 Directory of C:\MagooDev\java\Nikon Promo 
System\src\nikonpromosystem\descriptors

21/04/2009  03:31 PM    <DIR>          .
21/04/2009  03:31 PM    <DIR>          ..
24/04/2009  03:13 PM             3,446 AccountDescriptor.java
24/04/2009  03:13 PM            17,944 AccountTypeDescriptor.java
24/04/2009  03:13 PM             3,506 AddedValueBillingDescriptor.java
24/04/2009  03:13 PM             3,500 AddedValueItemsDescriptor.java
24/04/2009  03:13 PM             3,476 AddedValuesDescriptor.java
24/04/2009  03:13 PM            11,093 AddedValueTypeDescriptor.java
24/04/2009  03:13 PM             3,446 AddressDescriptor.java
24/04/2009  03:13 PM            15,052 AddressTypeDescriptor.java
24/04/2009  03:13 PM             9,247 BillingTypeDescriptor.java
24/04/2009  03:13 PM             3,478 BuyingGroupDescriptor.java
24/04/2009  03:13 PM             7,512 BuyingGroupTypeDescriptor.java
24/04/2009  03:13 PM             3,430 ChainDescriptor.java
24/04/2009  03:13 PM             7,428 ChainTypeDescriptor.java
24/04/2009  03:13 PM             3,452 CoatingDescriptor.java
24/04/2009  03:13 PM             3,508 ExtraParametersDescriptor.java
24/04/2009  03:13 PM             3,504 ForcedPromotionsDescriptor.java
24/04/2009  03:13 PM             3,333 InvoiceMessageTypeDescriptor.java
24/04/2009  03:13 PM             5,732 JobIdentificationTypeDescriptor.java
24/04/2009  03:13 PM             3,470 LensBillingDescriptor.java
24/04/2009  03:13 PM             3,452 LensItemsDescriptor.java
24/04/2009  03:13 PM            18,085 LensTypeDescriptor.java
24/04/2009  03:13 PM             3,468 ListPriceDescriptor.java
24/04/2009  03:13 PM             3,486 ManufacturerDescriptor.java
24/04/2009  03:13 PM             7,670 ManufacturerTypeDescriptor.java
24/04/2009  03:13 PM             3,454 MaterialDescriptor.java
24/04/2009  03:13 PM             9,514 MaterialTypeDescriptor.java
24/04/2009  03:13 PM             9,775 MonetaryUnitTypeDescriptor.java
24/04/2009  03:13 PM             3,462 PromoCallDescriptor.java
24/04/2009  03:13 PM             3,490 PromoCallIDDescriptor.java
24/04/2009  03:13 PM            20,769 PromoCallTypeDescriptor.java
24/04/2009  03:13 PM             3,528 PromoDiscountAmountDescriptor.java
24/04/2009  03:13 PM             7,558 PromoImageTypeDescriptor.java
24/04/2009  03:13 PM             3,474 PromoOutputDescriptor.java
24/04/2009  03:13 PM             9,566 PromoParameterTypeDescriptor.java
24/04/2009  03:13 PM            11,591 PromotionTypeDescriptor.java
24/04/2009  03:13 PM             3,454 SalesRepDescriptor.java
24/04/2009  03:13 PM             7,470 SalesRepTypeDescriptor.java
              37 File(s)        248,823 bytes

 Directory of C:\MagooDev\java\Nikon Promo System\src\nikonpromosystem\types

21/04/2009  03:35 PM    <DIR>          .
21/04/2009  03:35 PM    <DIR>          ..
24/04/2009  03:13 PM               784 .castor.cdr
21/04/2009  03:35 PM                13 .cvsignore
24/04/2009  03:13 PM             4,052 AddedValueTypeSourceType.java
21/04/2009  03:31 PM    <DIR>          descriptors
24/04/2009  03:13 PM             3,766 JobSourceType.java
24/04/2009  03:13 PM             3,982 JobTypeType.java
24/04/2009  03:13 PM             4,598 ParameterTypeType.java
24/04/2009  03:13 PM             3,827 PreferedLanguageType.java
24/04/2009  03:13 PM             4,204 PromoCallTypePromoStatusType.java
24/04/2009  03:13 PM             3,858 PromoSourceType.java
               9 File(s)         29,084 bytes

 Directory of C:\MagooDev\java\Nikon Promo 
System\src\nikonpromosystem\types\descriptors

21/04/2009  03:31 PM    <DIR>          .
21/04/2009  03:31 PM    <DIR>          ..
24/04/2009  03:13 PM             3,387 AddedValueTypeSourceTypeDescriptor.java
24/04/2009  03:13 PM             3,321 JobSourceTypeDescriptor.java
24/04/2009  03:13 PM             3,309 JobTypeTypeDescriptor.java
24/04/2009  03:13 PM             3,345 ParameterTypeTypeDescriptor.java
24/04/2009  03:13 PM             3,363 PreferedLanguageTypeDescriptor.java
24/04/2009  03:13 PM             3,411 
PromoCallTypePromoStatusTypeDescriptor.java
24/04/2009  03:13 PM             3,333 PromoSourceTypeDescriptor.java
               7 File(s)         23,469 bytes

     Total Files Listed:
              91 File(s)        495,137 bytes
              11 Dir(s)  341,127,143,424 bytes free
---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email

Reply via email to