UCM Web Service Calls Fail With A 'java.io.IOException: File has already been opened in streaming mode' Exception
(Doc ID 2415749.1)
Last updated on OCTOBER 07, 2022
Applies to:
Oracle Web Services Manager - Version 11.1.1.9.0 and laterInformation in this document applies to any platform.
Symptoms
The following error is occurring on the server when an actual request is sent to the UCM file upload service from the client file upload tool:
(Error)Message IDWSM-07501Message Level1WSM_POLICY_NAMEoracle/wss11_saml_or_username_token_with_message_protection_service_policyWEBSERVICE_PORT.nameGenericSoapPort ID[ACTIVE].ExecuteThread: 'X' for queue: 'weblogic.kernel.Default (self-tuning)'MessageFailure in Oracle WSM Agent processRequest, category=security, function=agent.function.service, application=Oracle UCM Web Services, composite=null, modelObj=GenericSoapService, policy=oracle/wss11_saml_or_username_token_with_message_protection_service_policy, policyVersion=X, assertionName={http://schemas.oracle.com/ws/2006/01/loggingpolicy}Logging.Supplemental Detailoracle.wsm.common.sdk.WSMException: GenericFault : generic error
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.executeSimpleAssertion(WSPolicyRuntimeExecutor.java:490)
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.executeAndAssertion(WSPolicyRuntimeExecutor.java:374)
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.execute(WSPolicyRuntimeExecutor.java:321)
at oracle.wsm.policyengine.impl.PolicyExecutionEngine.execute(PolicyExecutionEngine.java:175)
at oracle.wsm.agent.WSMAgent.processCommon(WSMAgent.java:1114)
at oracle.wsm.agent.WSMAgent.processRequest(WSMAgent.java:516)
at oracle.fabric.common.BindingSecurityInterceptor.processRequest(BindingSecurityInterceptor.java:102)
at oracle.integration.platform.common.InterceptorChainImpl.processRequest(InterceptorChainImpl.java:129)
at oracle.integration.platform.common.mgmt.InterceptorChainManager.processRequest(InterceptorChainManager.java:283)
at oracle.j2ee.ws.server.mgmt.runtime.SuperServerInterceptorPipeline.handleRequest(SuperServerInterceptorPipeline.java:165)
at oracle.j2ee.ws.server.provider.management.AbstractProviderInterceptorPipeline.executeRequestInterceptorChain(AbstractProviderInterceptorPipeline.java:576)
at oracle.j2ee.ws.server.provider.ProviderProcessor.executeInterceptorRequestChain(ProviderProcessor.java:929)
at oracle.j2ee.ws.server.WebServiceProcessor.processRequest(WebServiceProcessor.java:233)
at oracle.j2ee.ws.server.WebServiceProcessor.doService(WebServiceProcessor.java:195)
at oracle.j2ee.ws.server.WebServiceServlet.doPost(WebServiceServlet.java:490)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:138)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:324)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:464)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:121)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:211)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60)
at oracle.security.wls.filter.SSOSessionSynchronizationFilter.doFilter(SSOSessionSynchronizationFilter.java:296)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:163)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:138)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:324)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:464)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:121)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:211)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:60)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3807)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3773)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2336)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2235)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:378)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:307)
Caused by: java.lang.RuntimeException: OWS-12015
at oracle.j2ee.ws.saaj.soap.BinaryTextImpl.getNodeValue(BinaryTextImpl.java:266)
at oracle.security.xmlsec.util.NodeReaderForSubtree.getText(NodeReaderForSubtree.java:259)
at oracle.security.xmlsec.c14n.StreamingC14NImpl.c14nCurrentNode(StreamingC14NImpl.java:1386)
at oracle.security.xmlsec.c14n.StreamingC14NImpl.access$1400(StreamingC14NImpl.java:103)
at oracle.security.xmlsec.c14n.StreamingC14NImpl$C14NStream.read(StreamingC14NImpl.java:1570)
at java.nio.channels.Channels$ReadableByteChannelImpl.read(Channels.java:385)
at oracle.wsm.xml.XMLUtils.canonicalize(XMLUtils.java:260)
at oracle.wsm.log.executor.LogAssertionExecutor$MessageUtils.convertSOAPMessageToString(LogAssertionExecutor.java:865)
at oracle.wsm.log.executor.LogAssertionExecutor.createMessageLogForSOAPBinding(LogAssertionExecutor.java:584)
at oracle.wsm.log.executor.LogAssertionExecutor.execute(LogAssertionExecutor.java:213)
at oracle.wsm.policyengine.impl.runtime.AssertionExecutor.execute(AssertionExecutor.java:45)
at oracle.wsm.policyengine.impl.runtime.WSPolicyRuntimeExecutor.executeSimpleAssertion(WSPolicyRuntimeExecutor.java:482)
... 50 more
Caused by: java.io.IOException: File has already been opened in streaming mode
at oracle.j2ee.ws.saaj.util.mime.DynamicDataSource.getInputStream(DynamicDataSource.java:127)
at oracle.j2ee.ws.saaj.util.mime.StreamingDataHandler.getInputStream(StreamingDataHandler.java:90)
at oracle.j2ee.ws.saaj.soap.BinaryTextImpl.getNodeValue(BinaryTextImpl.java:263)
... 61 more
When running a ping test of this, the processing is successful:
All UCM documentation says the service policy and the client policy are correct in the environment.
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Cause |
Solution |