You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "James Livingston (JIRA)" <ji...@apache.org> on 2014/05/30 06:32:01 UTC
[jira] [Created] (AXIS2-5653) StackOverflowException triggered by
OperationDescriptionImpl.toString()
James Livingston created AXIS2-5653:
---------------------------------------
Summary: StackOverflowException triggered by OperationDescriptionImpl.toString()
Key: AXIS2-5653
URL: https://issues.apache.org/jira/browse/AXIS2-5653
Project: Axis2
Issue Type: Bug
Affects Versions: 1.6.2
Reporter: James Livingston
If the logging level is set to DEBUG, a StackOverFlowException can be triggered by running toString() on an appropriate OperationDescriptionImpl.
...
at java.lang.String.valueOf(String.java:2854) [:1.7.0_09]
at java.lang.StringBuilder.append(StringBuilder.java:128) [:1.7.0_09]
at org.apache.axis2.jaxws.description.impl.OperationDescriptionImpl.getSyncOperation(OperationDescriptionImpl.java:1013)
at org.apache.axis2.jaxws.description.impl.OperationDescriptionImpl.getAxisOperation(OperationDescriptionImpl.java:704)
at org.apache.axis2.jaxws.description.impl.OperationDescriptionImpl.toString(OperationDescriptionImpl.java:2300)
at java.lang.String.valueOf(String.java:2854) [:1.7.0_09]
...
1) toString() includes the code 'string.append("Axis Operation: " + getAxisOperation());'
2) The first time getAxisOperation() is called, it calls getSyncOperation()
3) The first time getSyncOperation() is called, the description is set to `this` if isJAXWSAsyncClientMethod() is false.
4) Further on, if the logging is set to DEBUG level, toString() is called on the description, looping to (1)
--
This message was sent by Atlassian JIRA
(v6.2#6252)
---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org