Java Webservice mit JWS Bindingnamen customizen

ProChris

Mitglied
Hallo,

ich arbeite mich gerade in Webservices im Java Kontext ein. Hier mein bisheriger Quellcode:

Java:
import javax.jws.WebService;
import javax.jws.soap.SOAPBinding;
import javax.jws.soap.SOAPBinding.Style;
import javax.xml.ws.Endpoint;

@WebService(name = "MySoapBinding", targetNamespace = "http://mynamespace")
@SOAPBinding(style=Style.RPC)
public class Main {
	public int add(int a, int b) {
		return a + b;
	}
	
	public static void main(String[] args) {
		Main main = new Main();
		Endpoint endpoint = Endpoint.publish("http://localhost:8086/cal", main);
	}
}

An sich ist der Service lauffähig. Lasse ich mit die WSDL Datei generieren und importiere diese dann in SoapUI, so fällt folgendes auf. Das WsdlInterface heisst "MainPortBinding". Ist es möglich den Bindingnamen irgendwie zu customizen? Ich möchte individuelle Bindingnamen vergeben. z.B. ohne den Suffix "PortBinding"

Viele Grüße

ProChris
 

JayGabriel

Aktives Mitglied
Hallo,

ich hab zwar noch nicht so viel Erfahrungen mit der Bottom-Up Methode beim WebService erstellen, aber in der
Code:
@WebService
-Annotation kannst du auch den
Code:
portName
angeben und ihn ganz deinen Wünschen entsprechend benennen.

Also zum Beispiel so:
Code:
@WebService(name = "WebService",
    portName = "WebServiceSOAP",
    targetNamespace = "http://de/WebService")

Ob du dann noch irgendwo anders auch noch andere Einstellungen brauchst, weiß ich nicht genau. Für mich ist der Weg von der WSDL Datei zum vollständigen WebService einfacher. ;)

Aber schau mal hier. Da sind die Möglichkeiten zum Annotieren aufgelistet.

Grüße,
Jay
 

ProChris

Mitglied
Hallo JayGabriel,

die Annotation kenne ich. Leider kann man darüber zwar den PortName setzen, es wird jedoch der Suffix "PortBinding" dahinter gesetzt.

Kennst Du sonst möglichkeiten?

Viele Grüße

ProChris
 

JayGabriel

Aktives Mitglied
Hallo,

ich habe gerade einfach mal in einer default WSDL Datei geschaut, was dort alles beim Binding angegeben werden kann.

Zum einen ist mir da aufgefallen, dass man in den Binding Properties nur den Namen fürs Binding angeben und den Porttype auswählen kann. Per default steht bei mir in der WSDL Datei als Name für das Binding
Code:
NewWSDLFileSOAP
. Ob das mit dem Namen dein Problem behebt, weiß ich nicht und kann es morgen auch erst ausprobieren, wenn ich wieder an meinem Entwicklungsrechner bin.

Zum anderen ist mir aufgefallen, dass man den Binding Content ansich nur generieren lassen kann. Also was dann direkt in der WSDL Datei dann an Konfigurationen auftaucht:
[XML]
<wsdl:binding name="NewWSDLFileSOAP" type="tns:NewWSDLFile">
<soap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http"/>
<wsdl:eek:peration name="NewOperation">
<soap:eek:peration soapAction="http://www.example.org/NewWSDLFile/NewOperation"/>
<wsdl:input>
<soap:body namespace="http://www.example.org/NewWSDLFile/" use="literal"/>
</wsdl:input>
<wsdl:eek:utput>
<soap:body namespace="http://www.example.org/NewWSDLFile/" use="literal"/>
</wsdl:eek:utput>
</wsdl:eek:peration>
</wsdl:binding>
[/XML]

Möglicherweise ist es das, was du suchst, aber diese Einstellungsmöglichkeiten hab ich halt nur beim Top-Down Vorgehen gesehen und welche Annotations dem entsprechen, weiß ich nicht.

Falls du dir das Top-Down Vorgehen mal anschauen möchtest, hier gibt es ein ziemlich gutes und ausführliches Tutorial (in deutsch) dazu, was Eclipse und jaxws benutzt.

Viele Grüße,
Jay

PS: ach ja, was mir da auch noch einfällt: es gibt die Möglichkeit beliebig viele Bindings zu den PortTypes anzugeben (habe ich irgendwo gelesen), also muss es eine Möglichkeit geben, diese selbst zu benennen. Hast du schon mal nach "multiple binding" oder so gegooglet?
 

ProChris

Mitglied
Hallo Jay,

nein ich habe noch nicht nach "multiple binding" gegoogelt. Wenn alle Stränge reissen, dass werde ich mich wohl doch von der Bottom-Up-Methode verabschieden und die Top-Down-Methode probieren. Ich werde mir jetzt mal das Tutorial von Dir anschauen.

Viele Grüße

ProChris
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J SOA WebService JAX-WS Java-Klasse per wsimport generieren lassen SOA 3
M JAVA Webservice Währungsrechner DRINGEND Hilfe SOA 1
E Webservice durch Java ansprechen SOA 7
A PHP WebService aus Java aufrufen SOA 2
C Problem mit Java Webservice - SOAPBinding.Style - Wrapper class fehlt SOA 1
T Krankes Vorhaben: Von VB auf Java Webservice SOA 10
G Webservice mit Java aufrufen SOA 2
O brauche hilfe bei java/webservice geschichte SOA 29
B REST - es gibt eine REST API, wie mache ich nun in JAVA weiter? SOA 8
D [SOAP] wsdl & maven & java 1.8 SOA 6
S Java EE 7 Tutorial unvollständig? SOA 0
G WSDL Java C# SOA 8
J REST mit java client und php server SOA 22
T Mehrdimensionale Objekte in WebServices für Nicht-Java SOA 4
E wsdl into Java-Klassen Maven-Plugin SOA 2
N Java -> WSDL char mit max-Length SOA 5
T Error beim Versuch, einen Webservice zu kontaktieren SOA 4
K Webservice: 4 counts of IllegalAnnotationExceptions SOA 0
D Zertifikat Authentifizierung am Webservice SOA 0
P JBOSS 7 und Restful Webservice SOA 1
N WebService Ausgabe einer ArrayList SOA 2
N Web Services Client aus externen WebService erstellen SOA 4
I SOAP Webservice Methoden und Parameter auslesen SOA 3
F [WebService] Array von eigenen Objekten SOA 0
P SOAP Webservice mit HTTP Basic Authentifizierung SOA 1
A Up-/ Download von Dateien zu WebService SOA 6
D WebService Technik - Aufwand Änderung des Application Server SOA 3
R Webservice Timeout Konfiguration SOA 3
D SOAP Webservice (SAP) SOA 3
MQue WebService Versionierung SOA 9
L [AXIS2] OutOfMemory Exception bei Übertragung von größerer Datei via Webservice SOA 3
A Funktion mit Map als WebService SOA 4
T Webservice serviceName im Handler ermitteln SOA 3
N Webservice Einbinden wsdl SOA 7
M Edit und Remove über Webservice SOA 3
F Client Problem gegen Webservice SOA 3
L wie ArrayList an Webservice geben? SOA 3
B Webservice Config / SoapStub: Best Practice SOA 3
S Objektübertragung Fehler über Webservice SOA 10
L Webservice HTTPS Netbeans SOA 2
G NullPointerException bei Parameterübergabe an Webservice mittels kSoap2 SOA 2
M Webservice per URL ansprechen SOA 14
M Webservice Client erstellen und XML Request senden SOA 3
T Verwendung von Eclipse Projekten im Axis2 Webservice SOA 8
S Webservice als "CronJob" SOA 4
M Webservice (JaxWS) extern verfügbar machen SOA 5
M Welches WebService Framework ist denn das beste FRAMEWORK? SOA 5
D Webservice fürs Internet sichtbar machen SOA 2
W WebService aus einer HTML-Seite SOA 9
T WebService innerhalb von Seam-Projekt, komplexe Datentypen SOA 6
N JAX-WS WebService und Tomcat 7 SOA 11
E Trennung von Daten und WebService und Wiederverwendung der Daten SOA 2
D Sicherheit bei REST-Webservice SOA 19
G WebService, was darf der Client alles sehen SOA 19
M Nutzen des Webservice AWSECommerceService SOA 1
S AXIS2 Webservice: Umgang mit komplexen Datentypen SOA 5
G Webservice Contract first SOA 8
G WebService -> ServletFilter SOA 2
G WebService Concurrency SOA 19
M Fehler beim Veröffentlichen eines Webservice SOA 6
G WebService Types SOA 7
G OpenLigaDB Webservice Client SOA 4
G WebService WSDL SOA 3
R Proxy WebService erstellen SOA 3
G JPA/ Webservice: Passwort Feld einer Klasse fürs Lesen "verschleiern" SOA 10
G WebService mit wsdl erstellen SOA 4
P WebService SOA 6
H Webservice: BindingProvider SOA 6
D WebService DB abfrage SOA 4
mabe83 EJB Klassen für Webservice nutzen SOA 2
S Webservice-Client-Klasse gibt immer null zurück SOA 3
G WebService mit komplexen Objekten SOA 5
T Rest Webservice der 2 verschiedene XML Objekte(JaxB) entgegennimmt SOA 10
S Webservice, Vererbung und Netbeans SOA 3
E Lesen der kompletten SOAP als WebService Provider/Server SOA 4
T WebService Authentifizierung SOA 11
mabe83 Suche Hilfe zum Thema Webservice + EJB SOA 3
T WebService erstellen SOA 28
M Webservice RuntimeModelerException? SOA 5
G WebService: mehrere methoden mit demselben Namen SOA 4
T einfacher Webservice SOA 3
G Webservice im JBoss: runtime modeler error SOA 3
V webservice von aussen (webbrowser) ansprechen SOA 2
V Webservice, allgemeine Fragen SOA 9
G Alfresco - WebDav oder WebService SOA 2
0 Webservice nutzen (rpc/enc style) SOA 2
R XML verschicken mit Webservice Server Client SOA 2
R Webservice aufrufen mit SOAP Style.DOCUMENT ? SOA 5
G Webservice zugreifen SOA 6
G Deploy Apache CXF WebService mit Eclipse SOA 2
G Webservice mit JSON SOA 8
T Webservice über Tomcat loggen SOA 5
thE_29 WebService - JAXBElement - richtige Klasse? SOA 2
L Probleme mit komplexen Datentypen in einen Webservice SOA 2
M Webservice/ Axis/ Bea Weblogic Server 8.1 SOA 12
E Webservice konfigurieren SOA 2
Y Webservice erstellen SOA 4
F Tutorial zu WebService mit JBoss, Eclipse und Jax-ws? SOA 3
C Webservice im Unternehmen SOA 4
L webservice frage (eclipse/wtp, wsdl) SOA 12

Ähnliche Java Themen

Neue Themen


Oben