2010-01-29 24 views
18

I XSC şemam için Java sınıfları oluşturmak için XJC aracını kullanın. JAXB Marshaller'ı sınıfları XML veri yüklerine dönüştürdüğümde, çıkış XML'sinde "schemaLocation" parametresini kaçırıyorum, ancak bu parametreyi xsd dosyasında bildiriyorum. Çıkış XML'de "schemaLocation" parametresini nasıl uygularsınız?JAXB XJC kod üretimi - "schemaLocation", Marshaller tarafından oluşturulan xml'de eksik

<?xml version="1.0" encoding="UTF-8"?><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="xsdns" xmlns:messages="http://www.exampleURI.com/Schema1" xmlns:datatypes="http://www.exampleURI.com/Schema1" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" xsi:schemaLocation="http://www.exampleURI.com/Schema1 ./messages.xsd" targetNamespace="http://www.exampleURI.com/Schema1" elementFormDefault="unqualified" version="true"> 
<xs:include schemaLocation="datatypes.xsd"/> 
<xs:complexType name="execute-system-command-struct"> 
    <xs:annotation> 
     <xs:documentation>The request for system command execution.</xs:documentation> 
    </xs:annotation> 
    <xs:sequence/> 
    <xs:attribute name="action" type="datatypes:system-action-kind-enum" use="required"> 
     <xs:annotation> 
      <xs:documentation>The action that the Voice System has to proceed.</xs:documentation> 
     </xs:annotation> 
    </xs:attribute> 

Selamlar

+0

sen tarafından üretilen XML bir örnek verebilir Aşağıda

kod üretimi için kullanılan benim xsd şema dosyasının uzaklaştırmak olduğunu JAXB, ve sizden nasıl farklıdır? * İstenir mi? – skaffman

+0

Zaten xcut cevabı ile çözüldü. Teşekkürler – cubesoft

cevap

27

bu deneyin:

marshaller.setProperty(Marshaller.JAXB_SCHEMA_LOCATION, "http://my.namespace my.schema.xsd"); 
İlgili konular