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 donald yang <do...@googlemail.com> on 2007/03/30 16:14:47 UTC
AXIS2-1.2RC1 can NOT deserialize byte[] member variable
I have developed one test case for attachment. AXIS2-1.2 RC1 can NOT
desserialize byte[] member variable[1][2][3]. However if the byte[] is NOT a
member variable, it works fine.
best regards
donald
[1] ComplexRecord.java which defines a byte[] member variable
*
import* java.io.Serializable;
*public* *class* ComplexRecord *implements* Serializable
{
*private* *byte*[] attachment;
*private* *int* count;
*public* *byte*[] getAttachment() {
*return* attachment;
}
*public* *void* setAttachment(*byte*[] attachment) {
*this*.attachment = attachment;
}
*public* *int* getCount() {
*return* count;
}
*public* *void* setCount(*int* count) {
*this*.count = count;
}
}
[2] web service test case
*
public* *class* TestCaseService
{
*public* ComplexRecord echoComplex(ComplexRecord record, String dest)
{
System.*out*.println("record.count is " + record.getCount());
System.*out*.println("record.attachment is : " + *new* String(
record.getAttachment()));
System.*out*.println("dest is : " + dest);
*return* record;
}
..........
}
[3] exception
java.lang.NumberFormatException: For input string: "aGVsbG8="
at java.lang.NumberFormatException.forInputString
(NumberFormatException.
java:48)
at java.lang.Integer.parseInt(Integer.java:447)
at java.lang.Byte.parseByte(Byte.java:151)
at java.lang.Byte.<init>(Byte.java:325)
at
org.apache.axis2.databinding.typemapping.SimpleTypeMapper.getSimpleTy
peObject(SimpleTypeMapper.java:84)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(
BeanUtil.java
:314)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(
BeanUtil.java
:301)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(
BeanUtil.java
:351)
at org.apache.axis2.databinding.utils.BeanUtil.processObject(
BeanUtil.ja
va:620)
at org.apache.axis2.databinding.utils.BeanUtil.ProcessElement(
BeanUtil.j
ava:568)
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(
BeanUtil.java
:507)
at org.apache.axis2.rpc.receivers.RPCUtil.processRequest(
RPCUtil.java:11
4)
at
org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic
(RPCMessageReceiver.java:116)
at
org.apache.axis2.receivers.AbstractInOutSyncMessageReceiver.receive(A
bstractInOutSyncMessageReceiver.java:39)
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:144)
at
org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostReq
uest(HTTPTransportUtils.java:279)
at org.apache.axis2.transport.http.AxisServlet.doPost(
AxisServlet.java:1
16)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:709)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(Appl
icationFilterChain.java:252)
at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationF
ilterChain.java:173)
at org.apache.catalina.core.StandardWrapperValve.invoke
(StandardWrapperV
alve.java:213)
at org.apache.catalina.core.StandardContextValve.invoke
(StandardContextV
alve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.j
ava:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.j
ava:105)
at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineVal
ve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.jav
a:148)
at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java
:869)
at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.p
rocessConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket
(PoolTcpEndpo
int.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt
(LeaderFol
lowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadP
ool.java:684)
at java.lang.Thread.run(Thread.java:595)