xmlファイルからJavaオブジェクトを作成しようとしています。私はJavaオブジェクトを作成するためにjaxb(unmarshalling)を使用しています。エラーが発生していますjavax.xml.bind.UnmarshalException: unexpected element (uri:"http://www.w3.org/2001/XMLSchema", local:"schema"). Expected elements are
jaxbを使用してJavaオブジェクトを作成する方法
私はいくつかのgoogleを見つけたので、xsdファイルが必要です。 。私は、次のJavaコードを使用しています:
import java.io.FileNotFoundException;
import javax.xml.bind.JAXBContext;
import javax.xml.bind.JAXBException;
import javax.xml.bind.UnmarshalException;
import javax.xml.bind.Unmarshaller;
import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name="report")
public class Report
{
public static void main(String [] args) throws FileNotFoundException
{
try
{
JAXBContext jc = JAXBContext.newInstance(new Class[] {com.bcbsks.testjb.Report.class});
Unmarshaller um = jc.createUnmarshaller();
Report myJAXBObject = (Report)um.unmarshal(new java.io.FileInputStream("report.xsd"));
}
catch(UnmarshalException ue)
{
ue.printStackTrace();
}
catch(JAXBException je)
{
je.printStackTrace();
}
}
}
しかし、私はFOLを取得しています。によりエラー:
javax.xml.bind.UnmarshalException: unexpected element (uri:"http://www.w3.org/2001/XMLSchema", local:"schema"). Expected elements are (none)
あなたは私がやっているいただきました間違った教えてくださいことはできますか?
ご協力いただきまして誠にありがとうございます。
これは私をたくさん助けた。 –
'unmarchal(FileInputStreamを、クラス)のためのメソッドシグネチャがありません' thomas.mc.work @ –
は残念ながら、私はもはやプロジェクトに取り組んでいるか、現時点では、JAXBを使用していませんが、私はそれが非推奨かになってきているものです疑います過去3年間に削除されました。古いバージョンのJaxbを見て、そのメソッドがdeprecateとしてマークされているか/別のものに置き換えられているかどうかを確認することができます。残念ながら、私はこのバージョンのjaxbを使っていたのを覚えていません。 –