Ola pessoal, estou tendo o seguinte erro quando executo meu codigo:
Exception in thread “main” java.lang.NoSuchMethodError:javax.xml.bind.Marshaller.marshal(Ljava/lang/Object;Ljava/io/File;)V
atNFe.Main.main(Main.java:48)
Java Result: 1
O Codigo é o seguinte:
try {
//instancia a classe JAXBContext que serve como um ponto de entrada
//para as operações disponíveis na API: marshal, unmarshal e validate.
//Ao invocar o método estático newInstance deve-se indicar qual pacote
//contém as classes mapeadas
JAXBContext context = JAXBContext.newInstance("br.inf.portalfiscal.nfe");
//instancia a classe Unmarshaller, que cria objetos Java a partir de arquivos XML
Unmarshaller unmarshaller = context.createUnmarshaller();
//instancia a classe Marshaller, que cria de arquivos XML a partir de objetos Java
Marshaller marshaller = context.createMarshaller();
File notaFile = new File("D:/nfeteste.xml");
//aqui ocorre o processo de conversão de XML para Java Beans.
TNFe nfe = unmarshaller.unmarshal(new StreamSource(notaFile), TNFe.class).getValue();
//pode-se efetuar quaisquer alterações
nfe.getInfNFe().getIde().setNatOp("Venda a prazo");
//persiste o conteúdo novamente no arquivo XML
marshaller.marshal(nfe, notaFile);
} catch (Exception e) {
e.printStackTrace();
}
O erro da na linha "marshaller.marshal(nfe, notaFile);.
Alguem sabe o porque esta acontecendo esse erro?
Abraços