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 du...@apache.org on 2003/03/15 16:43:27 UTC
cvs commit: xml-axis/java/src/org/apache/axis/providers/java JavaProvider.java
dug 2003/03/15 07:43:26
Modified: java build.xml
java/src/org/apache/axis/providers/java JavaProvider.java
Log:
If an exception is thrown in the c'tor the lock will never
be removed causing a hang the next time this service is called.
Revision Changes Path
1.227 +1 -1 xml-axis/java/build.xml
Index: build.xml
===================================================================
RCS file: /home/cvs/xml-axis/java/build.xml,v
retrieving revision 1.226
retrieving revision 1.227
diff -u -r1.226 -r1.227
--- build.xml 6 Mar 2003 23:56:07 -0000 1.226
+++ build.xml 15 Mar 2003 15:43:26 -0000 1.227
@@ -400,7 +400,7 @@
</copy>
</target>
- <target name="dist" depends="compile, javadocsdist, samples, junit"
+ <target name="dist" depends="compile, javadocsdist, samples"
description="create the full binary distribution">
<mkdir dir="${dist.dir}"/>
<mkdir dir="${dist.dir}/lib"/>
1.99 +6 -3 xml-axis/java/src/org/apache/axis/providers/java/JavaProvider.java
Index: JavaProvider.java
===================================================================
RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/providers/java/JavaProvider.java,v
retrieving revision 1.98
retrieving revision 1.99
diff -u -r1.98 -r1.99
--- JavaProvider.java 25 Jan 2003 19:28:01 -0000 1.98
+++ JavaProvider.java 15 Mar 2003 15:43:26 -0000 1.99
@@ -227,9 +227,12 @@
// placeholder, create a new service object and install it
// instead, then notify anyone waiting on the LockObject.
if (makeNewObject) {
- obj = getNewServiceObject(msgContext, clsName);
- session.set(serviceName, obj);
- lock.complete();
+ try {
+ obj = getNewServiceObject(msgContext, clsName);
+ session.set(serviceName, obj);
+ } finally {
+ lock.complete();
+ }
} else {
// It's someone else's LockObject, so wait around until
// it's completed.