PQ98920: WEBSERVICES CALL W/DOC LITERAL SOAP BINDING HAS A BLANK XMLNS ATTRIBUTE THROWS "NO SUCH OPERATION"

 Fixes are available

5.1.1.8: WebSphere Application Server 5.1.1 Cumulative Fix 8 for AIX
5.1.1.8: WebSphere Application Server 5.1.1 Cumulative Fix 8 for Windows
5.1.1.8: WebSphere Application Server 5.1.1 Cumulative Fix 8 for HP-UX
5.1.1.8: WebSphere Application Server 5.1.1 Cumulative Fix 8 for Solaris
5.1.1.6: WebSphere Application Server Version 5.1.1 Cumulative Fix 6
5.1.1.7: WebSphere Application Server Version 5.1.1 Cumulative Fix 7
5.1.1.4: WebSphere Application Server Version 5.1.1 Cumulative Fix 4
5.1.1.8: WebSphere Application Server 5.1.1 Cumulative Fix 8 for Linux



APAR status
Closed as program error.

Error description
In a WSDL with Document Literal binding with a single Element as
an input part, the SOAP request which is sent to a service
appears with a blank namespace:

<soapenv:Body><MUAMessageElement xmlns="">

This causes the Web Service to return an error with the
following message:

 faultCode: Server.generalException
 faultString: WSWS3277E: Error: No such operation
 &apos;MUAMessageElement&apos;

If the client is a BPEL business process, the following error is
seen on the client:

[23/12/04 10:01:39:641 PST] 74fd0646 BpelEngine    A
com.ibm.bpe.engine.BpelEngine
BPEE0071E: A two-way request for port type 'ProcessPortType' and
operation 'InputOperation' was accepted by activity 'Receive'.
The process ended before a corresponding reply activity was
executed.com.ibm.bpe.api.RuntimeFaultException: BPEE0003E: An
error occurred during the invocation of the activity
implementation 'Invoke'.
com.ibm.bpe.invocation.InvocationException: BPEP0207E: Web
Services Invocation Framework (WSIF) invocation failed with
exception WSWS3277E: Error: No such operation
&apos;MUAMessageElement&apos; detected by
'com.ibm.bpe.invocation.WSIFServiceInvocationHandler'.
[23/12/04 10:01:39:844 PST] 74fd0646 ExceptionUtil E CNTR0020E:
Non-application exception occurred while processing method
"InputOperation" on bean
"BeanId(TKTServiceClientEAR#TKTServiceClientEJB.jar#ClientBean,
null)". Exception data:
com.ibm.bpe.api.EngineMissingReplyException: BPEE0071E: A
two-way request for port type 'ProcessPortType' and operation
'InputOperation' was accepted by activity 'Receive'. The process
ended before a corresponding reply activity was executed.
com.ibm.bpe.api.RuntimeFaultException: BPEE0003E: An error
occurred during the invocation of the activity implementation
'Invoke'.
com.ibm.bpe.invocation.InvocationException: BPEP0207E: Web
Services Invocation Framework (WSIF) invocation failed with
exception WSWS3277E: Error: No such operation
&apos;MUAMessageElement&apos; detected by
'com.ibm.bpe.invocation.WSIFServiceInvocationHandler'.
Local fix Problem summary
****************************************************************
* USERS AFFECTED: Users of Business Processes described in     *
*                 BPEL, which invoke Web Services over SOAP    *
*                 using the Document Literal encoding.         *
****************************************************************
* PROBLEM DESCRIPTION: In a WSDL with Document Literal         *
*                      binding with a single Element as        *
*                      an input part, the SOAP request         *
*                      which is sent to a service              *
*                      appears with a blank namespace:         *
*                                                              *
*                      <soapenv:Body>                          *
*                      <MessageElement xmlns="">               *
*                                                              *
*                      This causes the Web Service to          *
*                      return an error with the                *
*                      following message:                      *
*                                                              *
*                       faultCode: Server.generalException     *
*                       faultString: WSWS3277E: Error: No      *
*                       such operation                         *
*                       &apos;MessageElement&apos;             *
*                                                              *
*                      If the client is a BPEL business        *
*                      process, an error is                    *
*                      seen on the client.                     *
****************************************************************
* RECOMMENDATION:                                              *
****************************************************************
In WSDL which describes a SOAP service using the Document
Literal encoding (Doc Lit), the input part is generally a
defined element in the XML Schema Definition section of the
WSDL.

This XSD Element will have a target namespace, specified by
the targetNamespace of the <schema> tag. The resulting
SOAP XML message should contain the element in that target
namespace.

In this error scenario, the XML element has a blank namespace,
for example:

<soapenv:Body><MessageElement xmlns="">

When the WSDL may describe a targetNamespace of
"http://my.service" so the request should be:

<soapenv:Body><MessageElement xmlns="http://my.service">

The error which comes back from a Web Service running in
WebSphere is:

 faultCode: Server.generalException
 faultString: WSWS3277E: Error: No such operation
 &apos;MessageElement&apos;


If the client is a BPEL business process, the following error
is seen on the client:



[23/12/04 10:01:39:641 PST] 74fd0646 BpelEngine    A

com.ibm.bpe.engine.BpelEngine

BPEE0071E: A two-way request for port type 'ProcessPortType'
and
operation 'InputOperation' was accepted by activity 'Receive'.

The process ended before a corresponding reply activity was

executed.com.ibm.bpe.api.RuntimeFaultException: BPEE0003E: An

error occurred during the invocation of the activity

implementation 'Invoke'.

com.ibm.bpe.invocation.InvocationException: BPEP0207E: Web

Services Invocation Framework (WSIF) invocation failed with

exception WSWS3277E: Error: No such operation

&apos;MessageElement&apos; detected by

'com.ibm.bpe.invocation.WSIFServiceInvocationHandler'.

[23/12/04 10:01:39:844 PST] 74fd0646 ExceptionUtil E
CNTR0020E:
Non-application exception occurred while processing method

"InputOperation" on bean

"BeanId(TKTServiceClientEAR#TKTServiceClientEJB.jar#ClientBean,

null)". Exception data:

com.ibm.bpe.api.EngineMissingReplyException: BPEE0071E: A

two-way request for port type 'ProcessPortType' and operation

'InputOperation' was accepted by activity 'Receive'. The
process
ended before a corresponding reply activity was executed.

com.ibm.bpe.api.RuntimeFaultException: BPEE0003E: An error

occurred during the invocation of the activity implementation

'Invoke'.

com.ibm.bpe.invocation.InvocationException: BPEP0207E: Web

Services Invocation Framework (WSIF) invocation failed with

exception WSWS3277E: Error: No such operation

&apos;MessageElement&apos; detected by

'com.ibm.bpe.invocation.WSIFServiceInvocationHandler'.


By adding the correct namespace into the SOAP request, the
Web Service will work correctly. This can be tested by
generating a simple client from the Web Service WSDL using
wsdl2java or the WebSphere Studio Application Developer
tooling equivalent "New Web Service client".
Problem conclusion
WSIF was changed to correctly put the namespace into the SOAP
request. The fix is targetted for WebSphere Application
Server version 5.1.1 cumulative fix 4.
Please refer to the recommended updates page for delivery
information:

http://www.ibm.com/support/docview.wss?rs=180&uid=swg27004980
Temporary fix Comments
APAR information
APAR number PQ98920
Reported component name WAS NETWRK DEPL
Reported component ID 5630A3601
Reported release 10W
Status CLOSED PER
PE NoPE
HIPER NoHIPER
Special Attention NoSpecatt
Submitted date 2004-12-29
Closed date 2005-03-08
Last modified date 2005-03-08

APAR is sysrouted FROM one or more of the following:

APAR is sysrouted TO one or more of the following:

Modules/Macros
WSIF          

Publications Referenced

Fix information

Applicable component levels
R003 PSN    UP
R00A PSN    UP
R00H PSN    UP
R00I PSN    UP
R00P PSN    UP
R00S PSN    UP
R00W PSN    UP
R103 PSY    UP
R10A PSY    UP
R10H PSY    UP
R10I PSY    UP
R10P PSY    UP
R10S PSY    UP
R10W PSY    UP


Document Information


Product categories: Software > Application Servers > Distributed Application & Web Servers > WebSphere Application Server > General
Operating system(s):
Software version: 10W
Software edition:
Reference #: PQ98920
IBM Group: Software Group
Modified date: Mar 8, 2005