Try to make a web service out of a wsdl ...

G

g-forsmo

Hi!

Can I ask you to try this?

Below you see a wsdl? could you try to make a .NET web service out of
ths wsdl (under localhost)? Some criterias must be met in the new .net
web service:

- target namespace must be the same (http://no/brreg/BReMS/WebService/
services) and
<s0:service name="OutboundLegacyDataReceiverService">
<s0:port binding="s1:OutboundLegacyDataReceiverServiceSoapBinding"
name="OutboundLegacyDataReceiverSoapPort">

I need a web service that is exactly the same (except address location
of course).

When testing the new web service method it should be like this

string ret = objWS.submitMessage(cpaid, securitykey, message);

regards
Geir F

----

<?xml version='1.0' encoding='UTF-8'?>
<s0:definitions name="OutboundLegacyDataReceiverServiceDefinitions"
targetNamespace="http://no/brreg/BReMS/WebService/services" xmlns=""
xmlns:s0="http://schemas.xmlsoap.org/wsdl/" xmlns:s1="http://no/brreg/
BReMS/WebService/services" xmlns:s2="http://schemas.xmlsoap.org/wsdl/
soap/">
<s0:types>
<xs:schema attributeFormDefault="unqualified"
elementFormDefault="qualified" targetNamespace="http://no/brreg/BReMS/
WebService/services" xmlns:s0="http://schemas.xmlsoap.org/wsdl/"
xmlns:s1="http://no/brreg/BReMS/WebService/services" xmlns:s2="http://
schemas.xmlsoap.org/wsdl/soap/" xmlns:xs="http://www.w3.org/2001/
XMLSchema">
<xs:element name="submitMessage">
<xs:complexType>
<xs:sequence>
<xs:element name="cpaid" type="xs:string"/>
<xs:element name="securitykey" type="xs:string"/>
<xs:element name="message" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="submitMessageResponse">
<xs:complexType>
<xs:sequence>
<xs:element name="return" type="xs:string"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
</s0:types>
<s0:message name="submitMessage">
<s0:part element="s1:submitMessage" name="parameters"/>
</s0:message>
<s0:message name="submitMessageResponse">
<s0:part element="s1:submitMessageResponse" name="parameters"/>
</s0:message>
<s0:portType name="OutboundLegacyDataReceiver">
<s0:eek:peration name="submitMessage" parameterOrder="parameters">
<s0:input message="s1:submitMessage"/>
<s0:eek:utput message="s1:submitMessageResponse"/>
</s0:eek:peration>
</s0:portType>
<s0:binding name="OutboundLegacyDataReceiverServiceSoapBinding"
type="s1:OutboundLegacyDataReceiver">
<s2:binding style="document" transport="http://schemas.xmlsoap.org/
soap/http"/>
<s0:eek:peration name="submitMessage">
<s2:eek:peration soapAction="" style="document"/>
<s0:input>
<s2:body parts="parameters" use="literal"/>
</s0:input>
<s0:eek:utput>
<s2:body parts="parameters" use="literal"/>
</s0:eek:utput>
</s0:eek:peration>
</s0:binding>
<s0:service name="OutboundLegacyDataReceiverService">
<s0:port binding="s1:OutboundLegacyDataReceiverServiceSoapBinding"
name="OutboundLegacyDataReceiverSoapPort">
<s2:address location="https://wss-test.brreg.no:443/BReMS/
WebService/OutboundLegacyDataReceiver"/>
</s0:port>
</s0:service>
</s0:definitions>
 
J

John Saunders [MVP]

Hi!

Can I ask you to try this?

Below you see a wsdl? could you try to make a .NET web service out of
ths wsdl (under localhost)? Some criterias must be met in the new .net
web service:

- target namespace must be the same (http://no/brreg/BReMS/WebService/
services) and
<s0:service name="OutboundLegacyDataReceiverService">
<s0:port binding="s1:OutboundLegacyDataReceiverServiceSoapBinding"
name="OutboundLegacyDataReceiverSoapPort">

I need a web service that is exactly the same (except address location
of course).

When testing the new web service method it should be like this

string ret = objWS.submitMessage(cpaid, securitykey, message);

I tried this, but couldn't find a way to specify the port name.

You are making a serious design error. Consider:

* Your callers have published a WSDL defining the contract they expect you
to adhere to. They have a database listing the URL for the WSDL (and
hopefully also the address) of the service they want you to implement. This
means that they have created a static contract that they require you to
fulfill.
* On the other hand, you're trying to figure out how to get .NET to look at
a class you've created and to get it to generate the same WSDL.

You are trying to dynamically generate a static WSDL. That's a mistake.
Instead, serve the WSDL at some location in your web server; have them place
that URL into their database; then, write your web service to be callable by
your caller. Do not expect .NET to dynamically generate something static.

BTW, if they are using the WSDL at runtime to dynamically generate the proxy
code that they will then use to call your code, then they, too are making a
mistake. If the WSDL is static, then they should be using a statically
created proxy class, not a dynamically created proxy
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,969
Messages
2,570,161
Members
46,710
Latest member
bernietqt

Latest Threads

Top