axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Anne Thomas Manes" <>
Subject Re: WS-I Compliance Assertion: BP2402
Date Sun, 15 Jun 2008 14:11:51 GMT

I'm at a loss to explain why you are receiving the BP2404 validation
error. As far as I can see, your WSDL contains a valid SOAP binding.
Which validation tool are you using? Perhaps it is looking for the
literal string "soapbind:binding" rather than the semantic equivalent
-- in your case "soap:binding". For testing purposes, I suggest
editing the WSDL to convert the "soap" prefix declaration and all
instances of its use to "soapbind".

As for the namespace question: Can you tell me why you chose to define
your message structures with no namespaces?  SOAP systems typically
work and interoperate better if you use QNames. (e.g., .NET 1.1
requires qualified names of all elements.)

You have three ways to reference schema components defined in external schemas:
- include: to reference components in external schemas in the same namespace
- import: to reference components in external schemas in different
namespaces (including no namespace)
- redefine: to reference and modify components in external schemas in
the same namespace or in no namespace

If you use redefine to reference external schemas with no namespace,
those components will be added to the redefining schema's namespace.

Schemas that do not declare a targetNamespace define components in the
"no namespace" namespace.

The elementFormDefault and attributeFormDefault attributes on a schema
declaration determine if local elements and attributes are assigned to
the targetNamespace or in no namespace. If you specify
elementFormDefault="qualified", then all local elements are assigned
to the targetNamepsace. If you specify
elementFormDefault="unqualified" or if you do not specify this
attribute, then local elements are assigned to no namespace.

You cannot reference locally declared components. (A global element is
declared as a direct child of the <schema> element. A local element is
declared as a child of some other element, e.g., a complexType.)

Your v1 WSDL with its imports and includes was valid, but I suspect
that many toolkits will get confused when you attempt to import
without specifying a namespace.

Your v2 WSDL with the copy and paste also appears to be valid.

In both cases, all child elements of your top level message elements
should be unqualified. In V2 they are defined as local elements and
you have not specified elementFormDefault="qualified". I think it's an
error for SOAPUI to generate the namespace prefixes on the child

Your WSDL currently defines only a SOAP 1.1 binding. You can add a
SOAP 1.2 binding if you'd like to also support SOAP 1.2 requests.
Axis2 can accept either type of binding.


On Fri, Jun 13, 2008 at 9:52 AM, cmurali <> wrote:
> Could any one help me with this?
> Also, as I am not able to get any clues as to how I would make my wsdl
> SOAP1.2 compliant, If I want to support only SOAP1.1, how would I change my
> WSDL to allow only SOAP1.1 request to come in. When the testers use the
> SOAPUI, it should only create SOAP1.1 binding request alone and not SOAP1.2.
> What changes to my attached wsdl would be required to acheive this?
> THanks,
> Muralidaran Chakravarthy
> cmurali wrote:
>> Here you go.
>> I have attached 3 versions. The first one was having the offending import
>> statements in raterankrequest.xsd and raterankresponse.xsd that did not
>> specify a namespace. In order to satisfy that requirement, I directly cut
>> and pasted the child schemas imported into those schemas which is the
>> version 2.
>> Apart from the original BP2402 question, I also want to use include and
>> export instead of cutting and pasting the contents of other xsds into the
>> main one. When I make it to work, I see that the namespace is appended to
>> each and every element of the sample request created. I have also attached
>> samples of the request with and without namespaces appended. If you can
>> suggest me some way to use include or export so I need not have to append
>> namespaces to every element, that would be great.
>> Muralidaran Chakravarthy
>> samplerequestCreatedbySOAPUIbyQueryingwsdlVersion1And2-Withoutnamespaces.xml
>> samplerequestCreatedbySOAPUIbyQueryingwsdlVersion3-Withnamespaces.xml.xml
>> Deepal Jayasinghe-2 wrote:
>>> When I try to access the WSDL file I can not see rest of the schema
>>> files. So is there any way that we can get rest of the imported schema
>>> file as well.
>>> -Deepal
>>>> Hi,
>>>> Please find attached my wsdl file which failed in WS-I compliance test
>>>> as
>>>> below. I tried to browse around various forums, but could not find the
>>>> solution. Could you please help?
>>>> Assertion: BP2402
>>>> Result
>>>> failed
>>>> Failure Message
>>>> The wsdl:binding element does not use a soapbind:binding element as
>>>> defined
>>>> in section "3 SOAP Binding." of the WSDL 1.1 specification.
>>>> raterankservice.wsdl
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail:
>>> For additional commands, e-mail:
> --
> View this message in context:
> Sent from the Axis - User mailing list archive at
> ---------------------------------------------------------------------
> To unsubscribe, e-mail:
> For additional commands, e-mail:

To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message