You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by fm...@apache.org on 2013/02/15 11:01:58 UTC
svn commit: r1446486 -
/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/webservices/CmisWebServicesServlet.java
Author: fmui
Date: Fri Feb 15 10:01:58 2013
New Revision: 1446486
URL: http://svn.apache.org/r1446486
Log:
CMIS-626: extended the Web Services servlet for Glassfish
Modified:
chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/webservices/CmisWebServicesServlet.java
Modified: chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/webservices/CmisWebServicesServlet.java
URL: http://svn.apache.org/viewvc/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/webservices/CmisWebServicesServlet.java?rev=1446486&r1=1446485&r2=1446486&view=diff
==============================================================================
--- chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/webservices/CmisWebServicesServlet.java (original)
+++ chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/webservices/CmisWebServicesServlet.java Fri Feb 15 10:01:58 2013
@@ -18,6 +18,8 @@
*/
package org.apache.chemistry.opencmis.server.impl.webservices;
+import java.lang.reflect.Method;
+
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.xml.ws.WebServiceFeature;
@@ -94,7 +96,7 @@ public class CmisWebServicesServlet exte
for (WebServiceFeature ft : wsfl) {
if (ft instanceof StreamingAttachmentFeature) {
((StreamingAttachmentFeature) ft).setDir(factory.getTempDirectory().getAbsolutePath());
- ((StreamingAttachmentFeature) ft).setMemoryThreshold(factory.getMemoryThreshold());
+ setMemoryThreshold(factory, (StreamingAttachmentFeature) ft);
}
}
}
@@ -102,4 +104,20 @@ public class CmisWebServicesServlet exte
return delegate;
}
+
+ private void setMemoryThreshold(CmisServiceFactory factory, StreamingAttachmentFeature ft) {
+ try {
+ // JAX-WS RI 2.1
+ ft.setMemoryThreshold(factory.getMemoryThreshold());
+ } catch (NoSuchMethodError e) {
+ // JAX-WS RI 2.2
+ // see CMIS-626
+ try {
+ Method m = ft.getClass().getMethod("setMemoryThreshold", long.class);
+ m.invoke(ft, (long) factory.getMemoryThreshold());
+ } catch (Exception e2) {
+ LOG.warn("Could not set memory threshold for streaming");
+ }
+ }
+ }
}