public static void main(String[] args) throws Exception {
JAXBContext context = JAXBContext.newInstance(Produto.class);
context.generateSchema(new SchemaOutputResolver() {
@Override
public Result createOutput(String namespaceUri, String suggestedFileName)
throws IOException {
StreamResult result = new StreamResult(new File("teste.xsd"));
return result;
}
});
}
}[/code]
eis a mensagem:
06/07/2012 23:47:14 com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace writeTo
INFO: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\teste.xsd (O sistema não pode encontrar o caminho especificado)
com.sun.xml.internal.txw2.TxwException: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\teste.xsd (O sistema não pode encontrar o caminho especificado)
at com.sun.xml.internal.txw2.output.StreamSerializer.<init>(Unknown Source)
at com.sun.xml.internal.txw2.output.ResultFactory.createSerializer(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.writeTo(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.access$700(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator.write(Unknown Source)
at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.generateSchema(Unknown Source)
at br.com.caelum.fj31.jaxb.TesteGeraSchema.main(TesteGeraSchema.java:15)
Caused by: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\teste.xsd (O sistema não pode encontrar o caminho especificado)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
... 7 more
Exception in thread "main" java.io.IOException: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\teste.xsd (O sistema não pode encontrar o caminho especificado)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.writeTo(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.access$700(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator.write(Unknown Source)
at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.generateSchema(Unknown Source)
at br.com.caelum.fj31.jaxb.TesteGeraSchema.main(TesteGeraSchema.java:15)
Alguém sabe o porque disso…
Na minha concepção o arquivo deveria ser gerado…pq não gera?
Eu ja tentei deixar o arquivo criado…mas não funfou…
java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\teste.xsd (O sistema não pode encontrar o caminho especificado)
java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\teste.xsd (O sistema não pode encontrar o caminho especificado)
Simplesmente não encontrou o arquivo XSD.[/quote]
Mas ai que esta…
era para ele criar esse arquivo…
de qualquer forma…eu criei um arquivo nesse diretório e ele continuou dando erro.
Eu consegui gerar o .xsd utilizando o comando de linha de código schemagen…mas pelo eclipse não estou conseguindo…
Isso é muito estranho.
public Result createOutput(String namespaceUri, String suggestedFileName)
throws IOException {
StreamResult result = new StreamResult(new File("teste.xsd"));
return result;
}
para isso:
File baseDir = new File(".")
public Result createOutput(String namespaceUri, String suggestedFileName)
throws IOException {
return new StreamResult(new File(baseDir, "teste.xsd"));
}
public Result createOutput(String namespaceUri, String suggestedFileName)
throws IOException {
StreamResult result = new StreamResult(new File("teste.xsd"));
return result;
}
para isso:
File baseDir = new File(".")
public Result createOutput(String namespaceUri, String suggestedFileName)
throws IOException {
return new StreamResult(new File(baseDir, "teste.xsd"));
}
O primeiro é mais amplo, tem tutorial e exemplos.[/quote]
[quote][/quote]
Vlw cara, mas tbm não funfou…
07/07/2012 12:10:19 com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace writeTo
INFO: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\.\schema1.xsd (O sistema não pode encontrar o caminho especificado)
com.sun.xml.internal.txw2.TxwException: [b]java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\.\schema1.xsd[/b] (O sistema não pode encontrar o caminho especificado)
at com.sun.xml.internal.txw2.output.StreamSerializer.<init>(Unknown Source)
at com.sun.xml.internal.txw2.output.ResultFactory.createSerializer(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.writeTo(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.access$700(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator.write(Unknown Source)
at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.generateSchema(Unknown Source)
at br.com.caelum.fj31.jaxb.TesteGeraSchema.main(TesteGeraSchema.java:15)
Caused by: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\.\schema1.xsd (O sistema não pode encontrar o caminho especificado)
at java.io.FileOutputStream.open(Native Method)
at java.io.FileOutputStream.<init>(Unknown Source)
at java.io.FileOutputStream.<init>(Unknown Source)
... 7 more
Exception in thread "main" java.io.IOException: java.io.FileNotFoundException: C:\Users\Bruno%20Luiz%20Viana\workspace-fj31\fj31-jaxb-standalone\.\schema1.xsd (O sistema não pode encontrar o caminho especificado)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.writeTo(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator$Namespace.access$700(Unknown Source)
at com.sun.xml.internal.bind.v2.schemagen.XmlSchemaGenerator.write(Unknown Source)
at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.generateSchema(Unknown Source)
at br.com.caelum.fj31.jaxb.TesteGeraSchema.main(TesteGeraSchema.java:15)
Eu ja tinha visto esse tutoriais…
Eu vi na net que essa API tinha um bug…não sei se é esse…de qualquer forma obrigado.
Eu instalei um plugin no meu eclipse e rodei para gerar o .xsd.
Como o meu foco não é gerar o xsd na aplicação e sim apenas o XML e transformar o XML em objeto (o que etsa funcionando bem) eu vou deixar esse assunto na lista das proximas pesquisas e vou prossguir.
Muito obrigado pela ajuda.
Mas se alguém souber de algo pode postar pois isso esta me deixando com uma pulga atras da orelha.