You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-user@axis.apache.org by "Arne M. Degenring" <ar...@degenring.de> on 2002/05/14 11:53:02 UTC
Bug? Beans with public attributes instead of getters
Hi,
is it true that Axis does not support beans that have public attributes
instead of private attributes with public getter- and setter-methods?
(Yes, I know... such a "bean" is - strictly speaking - no real bean.)
I always get NullPointerExceptions when I try to access the WSDL file in
such cases. Have a look at the files I've attached. It is a very simple
Web Service, that gives back a TestResult object:
public class TestResult
{
public String one;
public int two;
}
When I try to access
http://localhost:8080/axis/servlet/AxisServlet/TestWebservice?WSDL I get
back the error message:
<h2>AXIS error</h2>
<p>Sorry, something seems to have gone wrong... here are the
details:</p>
<pre>java.lang.NullPointerException </pre>
Tomcat prints a stack trace (see below). BTW: I'm using yesterday's
nightly build of AXIS.
After adding getter-Methods to TestResult everything works fine. Is it a
bug, or a (missing) feature?
Regards, Arne
---- TOMCAT 4.0.3 stack trace: -----------
- Mapping Exception to AxisFault
java.lang.NullPointerException
at
org.apache.axis.encoding.ser.BeanSerializer.writeSchema(BeanSerialize
r.java:275)
at org.apache.axis.wsdl.fromJava.Types.writeType(Types.java:412)
at
org.apache.axis.wsdl.fromJava.Types.writeTypeAsElement(Types.java:162
)
at
org.apache.axis.wsdl.fromJava.Types.writePartType(Types.java:151)
at
org.apache.axis.wsdl.fromJava.Emitter.writePartToMessage(Emitter.java
:934)
at
org.apache.axis.wsdl.fromJava.Emitter.writeResponseMessage(Emitter.ja
va:845)
at
org.apache.axis.wsdl.fromJava.Emitter.writeMessages(Emitter.java:662)
at
org.apache.axis.wsdl.fromJava.Emitter.writePortType(Emitter.java:626)
at
org.apache.axis.wsdl.fromJava.Emitter.getWSDL(Emitter.java:338)
at org.apache.axis.wsdl.fromJava.Emitter.emit(Emitter.java:244)
at
org.apache.axis.providers.java.JavaProvider.generateWSDL(JavaProvider
.java:384)
at
org.apache.axis.strategies.WSDLGenStrategy.visit(WSDLGenStrategy.java
:72)
at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:150)
at
org.apache.axis.SimpleChain.generateWSDL(SimpleChain.java:137)
at
org.apache.axis.handlers.soap.SOAPService.generateWSDL(SOAPService.ja
va:328)
at
org.apache.axis.server.AxisServer.generateWSDL(AxisServer.java:442)
at
org.apache.axis.transport.http.AxisServlet.doGet(AxisServlet.java:321
)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.servlets.InvokerServlet.serveRequest(InvokerServl
et.java:446)
at
org.apache.catalina.servlets.InvokerServlet.doGet(InvokerServlet.java
:180)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:247)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:193)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:243)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:190)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:
2343)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:180)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatche
rValve.java:170)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:564)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:170)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:564)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
468)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:564)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:174)
at
org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline
.java:566)
at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.jav
a:472)
at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at
org.apache.catalina.connector.http.HttpProcessor.process(HttpProcesso
r.java:1012)
at
org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.ja
va:1107)
at java.lang.Thread.run(Thread.java:484)