WSDL Doesn't validate

5 messages Options
Embed this post
Permalink
cxreloaded

WSDL Doesn't validate

Reply Threaded More More options
Print post
Permalink
Hi!, I'm new in this forum, I've being reading it and it seems very interesting and useful, xD

I've added an external webservice but it does not validate, I've been reading in this forum that OpenESB is not compatible with Arrays on RPC/encoded and this seems to be the case, I've tried make a WS client into a EJB module and can't even add it , it says the selected wsdl is rpc encoded.

There's a proper solution?

Thank you.

Here's a sample project with the error
failDemo.zip

These are some errors:

ERROR: cvc-datatype-valid.1.2.1: 'xsd:int[]' is not a valid value for 'QName'.

ERROR: cvc-attribute.3: The value 'xsd:int[]' of attribute 'type' on element 'part' is not valid with respect to its type, 'QName'.

ERROR: In part "workflow_steps", attribute type's value "xsd:int[]" is not a valid xml schema type available in this wsdl file. : Specify a valid schema type value for type attribute.

ERROR: s4s-att-invalid-value: Invalid attribute value for 'type' in element 'element'. Recorded reason: cvc-datatype-valid.1.2.1: 'xsd:string[]' is not a valid value for 'QName'.

ERROR: src-resolve: Cannot resolve the name 'SOAP-ENC:Array' to a(n) 'type definition' component.
Girish Patil-2

Re: WSDL Doesn't validate

Reply Threaded More More options
Print post
Permalink
Some javascript/style in this post has been disabled (why?)
JAX-WS based Webservice does not RPC/Encoded, you need to you JAX-RPC based client.

Did you try JAX-RPC client? Netbeans Webservice Client wizard allows you to choose client type/style [1].

[1] http://old.nabble.com/attachment/16591710/0/moz-screenshot-6.jpg

cxreloaded wrote:
Hi!
I've added an external webservice but it does not validate, I've been
reading in this forum that OpenESB is not compatible con Arays on
RPC/encoded and this one seems to be the case, I've tried to add it as a WS
client into a EJB module and can't even add it , it says the selected wsdl
is rpc encoded.

There's a proper solution? 

Thank you.

Here's a sample project with the error
http://n2.nabble.com/file/n3916279/failDemo.zip failDemo.zip 

These are some of the errors:

ERROR: cvc-datatype-valid.1.2.1: 'xsd:int[]' is not a valid value for
'QName'.

ERROR: cvc-attribute.3: The value 'xsd:int[]' of attribute 'type' on element
'part' is not valid with respect to its type, 'QName'.

ERROR: In part "workflow_steps", attribute type's value "xsd:int[]" is not a
valid xml schema type available in this wsdl file. : Specify a valid schema
type value for type attribute.

ERROR: s4s-att-invalid-value: Invalid attribute value for 'type' in element
'element'. Recorded reason: cvc-datatype-valid.1.2.1: 'xsd:string[]' is not
a valid value for 'QName'.

ERROR: src-resolve: Cannot resolve the name 'SOAP-ENC:Array' to a(n) 'type
definition' component.
  
cxreloaded

Re: WSDL Doesn't validate

Reply Threaded More More options
Print post
Permalink
Thanks for your answer, I've installed the RPC-Encoded plugin and I've been able to finish the wizard choosing that option but then appears this error message:"WsCompile script failed during initial client generation", I see that in the Output console there's an error about the namespace of a variable:

..entity name invalid: "SipOnline" (in namespace: "http://www.w3.org/2001/XMLSchema")

I'd like to be sure whether this WSDL is incompatible with OpenESB or if it's just a bug or problem in the
wsdl though I've tested this WSDL in an online tester (http://www.soapclient.com/soaptest.html) and it works so I'd rule out it's a problem with the wsdl, any suggestions? (this is the wsdl frontend.php.wsdl)

If it's incompatible with OpenESB... I've read in other thread that I could make an axis ws client and use it as a proxy, someone know what I need to do it (any tutorial...)  or how to solve the above problem when adding the rpc/encoded web service client in an ejb module?

As a last option I could speak to the WebService developers so that they change they wdsl style but btm I'd rather to avoid this option.

Thank you.

Girish Patil-2 wrote:
JAX-WS based Webservice does not RPC/Encoded, you need to you JAX-RPC
based client.

Did you try JAX-RPC client? Netbeans Webservice Client wizard allows you
to choose client type/style [1]
<http://old.nabble.com/attachment/16591710/0/moz-screenshot-6.jpg>.

[1] http://old.nabble.com/attachment/16591710/0/moz-screenshot-6.jpg

cxreloaded wrote:
> Hi!
> I've added an external webservice but it does not validate, I've been
> reading in this forum that OpenESB is not compatible con Arays on
> RPC/encoded and this one seems to be the case, I've tried to add it as a WS
> client into a EJB module and can't even add it , it says the selected wsdl
> is rpc encoded.
>
> There's a proper solution?
>
> Thank you.
>
> Here's a sample project with the error
> http://n2.nabble.com/file/n3916279/failDemo.zip failDemo.zip
>
> These are some of the errors:
>
> ERROR: cvc-datatype-valid.1.2.1: 'xsd:int[]' is not a valid value for
> 'QName'.
>
> ERROR: cvc-attribute.3: The value 'xsd:int[]' of attribute 'type' on element
> 'part' is not valid with respect to its type, 'QName'.
>
> ERROR: In part "workflow_steps", attribute type's value "xsd:int[]" is not a
> valid xml schema type available in this wsdl file. : Specify a valid schema
> type value for type attribute.
>
> ERROR: s4s-att-invalid-value: Invalid attribute value for 'type' in element
> 'element'. Recorded reason: cvc-datatype-valid.1.2.1: 'xsd:string[]' is not
> a valid value for 'QName'.
>
> ERROR: src-resolve: Cannot resolve the name 'SOAP-ENC:Array' to a(n) 'type
> definition' component.
>  
Jakub Grabowski

Re: WSDL Doesn't validate

Reply Threaded More More options
Print post
Permalink
Yes, indeed axis proxy often solves the problem. Unfortunately it's not automagic way. To create such a proxy you have to generate axis based client and pack it into a jar file (or you can also create it in your ejb project if you don't intend to reuse it). Then create EJB Module with webservice, import axis client as library and call axis it's methods inside your ejb code.

Hope it helps,
Jakub Grabowski
Perfectsource <http://www.perfectsource.pl>

cxreloaded wrote:
If it's incompatible with OpenESB... I've read in other thread that I could make an axis ws client and use it as a proxy, someone know what I need to do it (any tutorial...)  or how to solve the above problem when adding the rpc/encoded web service client in an ejb module?
cxreloaded

Re: WSDL Doesn't validate

Reply Threaded More More options
Print post
Permalink
It helps a lot xD, I'm going to do that.

best regards

Jakub Grabowski wrote:
Yes, indeed axis proxy often solves the problem. Unfortunately it's not automagic way. To create such a proxy you have to generate axis based client and pack it into a jar file (or you can also create it in your ejb project if you don't intend to reuse it). Then create EJB Module with webservice, import axis client as library and call axis it's methods inside your ejb code.

Hope it helps,
Jakub Grabowski
Perfectsource <http://www.perfectsource.pl>

cxreloaded wrote:
If it's incompatible with OpenESB... I've read in other thread that I could make an axis ws client and use it as a proxy, someone know what I need to do it (any tutorial...)  or how to solve the above problem when adding the rpc/encoded web service client in an ejb module?