java - JAXB exception messages: How to change language? -


during xml validation against xsd file using jaxb jaxbexceptions in case of invalid xml files. message of exceptions calling event.getmessage(). resulting string in german language.

i'm using jaxb 2.2. java 8 on german system.

what determines language jaxb exception messages , how can change english?

here's code:

schemafactory schemafactory = schemafactory.newinstance(xmlconstants.w3c_xml_schema_ns_uri); try {     schema schema = schemafactory.newschema();     jaxbcontext jaxbcontext = jaxbcontext.newinstance("mypackage");     unmarshaller unmarshaller = jaxbcontext.createunmarshaller();     unmarshaller.seteventhandler(new xmlvalidationeventhandler());     unmarshaller.setschema(schema);     myclass = (myclass) unmarshaller.unmarshal(new file("myfile.xml"));  } catch (saxexception saxe) {     system.out.println("sax-exception during creation of schema object!");     saxe.printstacktrace(); } catch (jaxbexception e) {} 

and event-handler:

public class xmlvalidationeventhandler implements validationeventhandler {  @override public boolean handleevent(validationevent event) {     system.out.println("xml validation failure in line "                         + event.getlocator().getlinenumber()                         + ", column " + event.getlocator().getcolumnnumber()                         + ": " + event.getmessage());     return true; } 

here example of output of event handler:

xml validation failure in line 8, column 48: cvc-maxinclusive-valid: wert "10000" ist nicht facet-gültig in bezug auf maxinclusive "8.0e3" für typ "type". xml validation failure in line 17, column 64: ungültiger wert 250 für feld day. xml validation failure in line 17, column 64: cvc-datatype-valid.1.2.1: "2014-02-2501:00:00z" ist kein gültiger wert für "datetime".

ok, found out language used jaxb event messages determined java system property user.language. default language therefore dependent on system runs on.

i changed run configuration of java program adding -duser.language=en. changed language of jaxb event messages english.


Comments