Spring WS show WSDL definition at specyfic address - web-services

I have problem with displaying my WSDL. I have found a way to dynamic read it from my XSD schema and now i am doing this as:
<sws:dynamic-wsdl id="test"
portTypeName="testPort"
locationUri="/"
targetNamespace="http://testnamespace">
<sws:xsd location="/WEB-INF/test.xsd"/>
</sws:dynamic-wsdl>
this way i got under address : localhost:localport/applicationname/id.wsdl WSDL which in my case is : localhost:8080/MyApp/test.wsdl.
Thing i want to achive is to display this WSDL after executing another request: localhost:8080/MyApp/test.aspx?WSDL How can i edit my code to do so? Can anyone redirect me somewhere if it is described ? I thought about creating a wsdl file instead of xsd but do anyone have an example how to show under specyfic address wsdl file?

From mine experience I recommend You modify your proxy_ajp configuration file add:
ProxyPass /MyApp/test.aspx?WSDL ajp://localhost:8080/MyApp/test.wsdl
then restart your httpd. After this operation all request coming for localhost:8080/MyApp/test.aspx?WSDL will giving the localhost:8080/MyApp/test.wsdl result

Related

How to get Cookies from response header in jMeter

I am trying to get the cookies from a GET request when I first access a website via HTTP Request, there are a number of suggestions that suggest using user.properties files e.t.c. but I do not actually have these available as I am using the jMeter GUI to build the tests and it doesn't create these files.
Is there a way of getting the cookies from the header without the user.properties. Or if not, please could I request some detail as to how to achieve creating a user.properties file e.t.c. as I am very very new to jMeter.
Thanks in advance
For a simple caching you just need to add to Test Plan HTTP Cookie Manager and HTTP cookie(s) will be added.
user.properties is used for specific cases, and it is already exists in your JMeter bin folder in case you will need to update it.

How to pass a parameter to a wsdl URL?

I know it is not the current ways of doing things but...
How do I pass a http parameter to a WSDL URL?
I tried to attach it to the end of the query String like
"http://host:port/serviceA/methodA?wsdl&parameterName=value"
but the webservice refuse to read it.
What is the correct way of doing it?
I am no authority, but I am working with a web service (SOAP) at the moment - SOAP services seem to expect an XML Document, delivered as a POST.
Try doing a HTTP POST instead of a GET:
curl -d parameterName=value "http://host:port/serviceA/methodA?wsdl"
I solved this question by changing the endpoint URL. (not the WSDL URL)
Thanks for you reponses.

Web service using Lotus notes

when am trying to WSDL using lotus script i got following error, any one help me
"Error: client:WSDLreader:Loading of the wsdl file failed HRESULT=0x80070057-WSDLReader:xml Parser failed at linenumber 1, lineposition 63, reason is required white space was missing.HRESULT=0x1Line:7"
It sounds like an error with the WSDL file. See if you can verify it with an online WSDL checker.
Also, make sure you have specified the correct endpoint URL.
That error normally means that the structure of the WSDL is broken. For example if you got a 404 page back instead of WSDL from the server.
First try opening the WSDL File via a browser and check it to make sure you only get the WSDL back.
Your URL above has at the end:
?WSDL%22
The %22 looks wrong.
Second you can test your WSDL using a tool like SOAPUI. http://www.soapui.org
There is a tutorial on the Wiki at this location:
http://www-10.lotus.com/ldd/ddwiki.nsf/dx/Testing_your_Domino_web_service_provider_and_consumer_using_SoapUI._

Jax-ws customize generated WSDL

I need to change the JAX-WS generat WSDL because of a soap:address error (contextRoot it is not correct due to a WebService remapping of the Application Server).
I Read about the WSDLGeneratorExtension system but I can not use it, i placed a com.sun.xml.ws.api.wsdl.writer.WSDLGeneratorExtension file under /META-INF/services with insite de class name of my implementation, but it is never called.
How can i let it work? Or Can i follow another way to corret the soap:address location of the generated WSDL?
Thank you!
Usual practice is not to use (or even include) actual service URL into WSDL (unless it's some sort of public service which is supposed to be 'well known'). Reasons being that different environments running the same service would have different URLs, for example.
As part of WS client initialization you could provide different URL (usually from some sort of config file). So you perhaps should not think in terms of fixing URL in WSDL but instead pass proper URL in your client initialization.

Consume a redirected webservice in ColdFusion

I've been provided a WSDL file that points to a webservice. I use this webservice to log in and create a session. In addition to the session token, the login response provides a URL I'm supposed to redirect my webservice calls to. Other than the URL I'm addressing, the definitions are the same, so no new WSDL is provided.
What is the best way to handle this? Generate my own altered WSDL? Create and/or alter the webservice object via Java? Some third option I've not thought of?
This is a hack, but you can always download the WSDL as a template, and reference it as a local file. When the login call tells you what URL to hit, simply replace the URL in the template with the new one, and proceed. You could even have a different version of the WSDL for each URL that could be returned, maybe using a hash of the URL as the filename.
Coldfusion webservice invocations always point to WSDL. Be it a local WSDL file, or a remote WSDL file you can access over an HTTP or HTTPs connection. Unless the responding URL points to a new WSDL file to use, it's not going to be that helpful.
-Jay