Hi,
We are able to generate, process and submit many different
xforms successfully with the Chiba schema2xforms tool.
However, when I try and run the attached schema and instance
thru schema2xforms I get a Null Pointer Exception and the
following stacktrace in the tomcat log :
2005-03-23 16:35:13 StandardWrapperValve[XFServlet]:
Servlet.service() for servlet XFServlet threw exception
java.lang.NullPointerException
at
org.chiba.tools.schemabuilder.BaseSchemaFormBuilder.startBind
Element(BaseSchemaFormBuilder.java:612)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addSi
mpleType(AbstractSchemaFormBuilder.java:2966)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addSi
mpleType(AbstractSchemaFormBuilder.java:3070)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addEl
ement(AbstractSchemaFormBuilder.java:1991)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addGr
oup(AbstractSchemaFormBuilder.java:2831)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addCo
mplexTypeChildren(AbstractSchemaFormBuilder.java:1942)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addCo
mplexType(AbstractSchemaFormBuilder.java:1755)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.addEl
ement(AbstractSchemaFormBuilder.java:2451)
at
org.chiba.tools.schemabuilder.AbstractSchemaFormBuilder.build
Form(AbstractSchemaFormBuilder.java:781)
at
org.chiba.tools.schemabuilder.Schema2XForms.execute
(Schema2XForms.java:355)
at org.chiba.yawlupload.XFServlet.doPost
(XFServlet.java:92)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service
(HttpServlet.java:802)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFil
ter(ApplicationFilterChain.java:237)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationFilterChain.java:157)
at
org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperValve.java:214)
at
org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at
org.apache.catalina.core.StandardContextValve.invokeInternal
(StandardContextValve.java:198)
at
org.apache.catalina.core.StandardContextValve.invoke
(StandardContextValve.java:152)
at
org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.StandardHostValve.invoke
(StandardHostValve.java:137)
at
org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.valves.ErrorReportValve.invoke
(ErrorReportValve.java:118)
at
org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:102)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at
org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineValve.java:109)
at
org.apache.catalina.core.StandardValveContext.invokeNext
(StandardValveContext.java:104)
at org.apache.catalina.core.StandardPipeline.invoke
(StandardPipeline.java:520)
at org.apache.catalina.core.ContainerBase.invoke
(ContainerBase.java:929)
at org.apache.coyote.tomcat5.CoyoteAdapter.service
(CoyoteAdapter.java:160)
at org.apache.coyote.http11.Http11Processor.process
(Http11Processor.java:799)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandl
er.processConnection(Http11Protocol.java:705)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt
(PoolTcpEndpoint.java:577)
at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadPool.java:683)
at java.lang.Thread.run(Thread.java:534)
-----
The XFServlet servlet throwing the exception, is our own
servlet that we use to wrap schema2xforms. What I find
interesting about this exception is that there is the
following comment directly above the line of code in the
org.chiba.tools.schemabuilder.BaseSchemaFormBuilder class
(line 612):
// START WORKAROUND
// Due to a Chiba bug, anyType is not a recognized type name.
// so, if this is an anyType, then we'll just skip the type
// setting.
So, before trying to provide a fix I'm hoping for any
clarification and/or background info on this message since
it seems to be an existing issue that the attached
combination of schema and instance uncovers.
Many thanks,
Guy
------------------------------------------------------------------------
<?xml version="1.0"
encoding="UTF-8"?><OverseeMusic><nameOfArtist/></OverseeMusic>
------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?><xsd:schema elementFormDefault="qualified" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><xsd:element
name="OverseeMusic"><xsd:complexType><xsd:sequence><xsd:element name="nameOfArtist"><xsd:simpleType><xsd:restriction base="xsd:string"><xsd:minLength
value="1"/></xsd:restriction></xsd:simpleType></xsd:element></xsd:sequence></xsd:complexType></xsd:element></xsd:schema>