0

当我为整数字段输入非数字内容时,我收到一条错误消息:

“不是数字:0.012A”。

在为模式验证解组时,有没有办法输出自定义错误消息?

我正在使用 Apache CXF 2.6.1

<entry key="schema-validation-enabled" value="true" ></entry>

在 cxf-spring.xml 中。

java.lang.RuntimeException:不是数字:在 org.apache.cxf.jaxb.io.DataReaderImpl$WSUIDValidationHandler.handleEvent(DataReaderImpl. java:78) 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleEvent(UnmarshallingContext.java:655) 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallingContext.handleError(UnmarshallingContext. java:691) 在 com.sun.xml.bind.v2.runtime.unmarshaller.Loader.handleParseConversionException (Loader. java:271) 在 com.sun.xml.bind.v2.runtime.unmarshaller 的 com.sun.xml.bind.v2.runtime.unmarshaller.LeafPropertyLoader.text(LeafPropertyLoader.java:69)。UnmarshallingContext.text(UnmarshallingContext.java:514) 在 com.sun.xml.bind.v2.runtime.unmarshaller.InterningXmlVisitor.text(InterningXmlVisitor.java:93) 在 com.sun.xml.bind.v2.runtime.unmarshaller。 com.sun.xml.bind.v2.runtime.unmarshaller 上的 StAXStreamConnector.processText(StAXStreamConnector.java:338)。com.sun.xml.bind.v2.runtime.unmarshaller 上的 StAXStreamConnector.handleEndElement(StAXStreamConnector.java:216)。 StAXStreamConnector.bridge(StAXStreamConnector.java:185) 在 com.sun.xml.bind.v2.runtime.unmarshaller.UnmarshallerImpl.unmarshal0(UnmarshallerImpl.java:370) 在 com.sun.xml.bind.v2.runtime.unmarshaller。 UnmarshallerImpl.unmarshal(UnmarshallerImpl.java:349) 在 org.apache.cxf.jaxb.JAXBEncoderDecoder.doUnmarshal(JAXBEncoderDecoder.java:784) 在 org.apache.cxf.jaxb.JAXBEncoderDecoder。在 org.apache.cxf.jaxb.JAXBEncoderDecoder$1.run(JAXBEncoderDecoder.java:812) 在 org.apache.cxf.jaxb 的 java.security.AccessController.doPrivileged(Native Method) 访问 $100(JAXBEncoderDecoder.java:97)。 JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:810) 在 org.apache.cxf.jaxb.JAXBEncoderDecoder.unmarshall(JAXBEncoderDecoder.java:644) 在 org.apache.cxf.jaxb.io.DataReaderImpl.read(DataReaderImpl.java:157)在 org.apache.cxf.interceptor.DocLiteralInInterceptor.handleMessage(DocLiteralInInterceptor.java:108) 在 org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262) 在 org.apache.cxf.transport.ChainInitiationObserver.onMessage (ChainInitiationObserver.java:122) 在 org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:211) 在 org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:193) 在 org.apache.cxf 的 org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:213) .transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:129) 在 org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:187) 在 org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost (AbstractHTTPServlet.java:110) 在 javax.servlet.http.HttpServlet.service(HttpServlet.java:710) 在 org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:166) 在 org.apache。 catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 在 org.apache.catalina.core.ApplicationFilterChain。doFilter(ApplicationFilterChain.java:206) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) at org.apache .catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 在 org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102) 在 org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java :109) 在 org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263) 在 org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) 在 org.apache.coyote.http11。 org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java: 上的 Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:584)447)在java.lang.Thread.run(未知来源)

4

0 回答 0