CXF Project auf Tomcat laufen lassen - wie?

Status
Nicht offen für weitere Antworten.

pocketom

Bekanntes Mitglied
Hi,

ich bin letzte Woche von Axis2 auf CXF umgestiegen. Zuletzt habe ich mir Klassen und ServicePort Interface generieren lassen (mit Maven2 CXF Plugin aus einem WSDL File), was soweit prima funktioniert hat. Nur wie mache ich daraus nun ein WAR Projekt das ich auf meinem Apache Tomcat installieren kann? Ich habe nun eine Menge gegoogelt und dabei lediglich herausgefunden das es sich offenbar nicht um den Standardweg handelt (Spring WS wird stattdessen oft in dem Zusammenhang genannt). Ich suche einfach einen Weg (analog zu den Axis2 *.aar Files) um meinen Service auf den Tomcat zu deployen. Würde mich sehr freuen wenn mir jemand hierzu kurz den ein oder anderen Denkanstoss geben kann, ich blick einfach nicht mehr durch :-(

Vielen Dank schonmal!


EDIT: Wie lasse ich mir die web.xml generieren, bzw. das WEB-INF Verzeichnis (oder muss ich es von Hand anlegen)?
 

pocketom

Bekanntes Mitglied
OK, danke! Ich habe es mit Maven gemacht. Nun habe ich ein war file in meinem Target Folder. Fehlt nur noch das web.xml im WEB-INF Folder, das wird irgendwie noch nicht generiert. Muss ich das manuell erstellen?
 
Zuletzt bearbeitet:
T

tuxedo

Gast
btw: falsches Board, oder? Hat ja recht wenig mit Netzwerk und viel mehr mit Deployment zu tun...

- Alex
 

pocketom

Bekanntes Mitglied
Maybe, falls dem so ist könnt Ihr es gern verschieben.

Kann mir trotzdem grad jemand helfen wie ich mit der web.xml verfahren muss, von Hand erstellen oder gibts einen Weg die automatisch erstellen zu lassen?
 

Noctarius

Top Contributor
Hab es mal verschoben.

Zum Problem: Eigentlich sollte dir ein Maven Webapp Archetype ein passendes web.xml automatisch erstellen.
 

pocketom

Bekanntes Mitglied
Hmm, ich hab nix zwecks Maven Webapp Archetype angegeben, da ich keinen passenden Archetype in der Eclipse Archetype Selection gefunde habe. Wo finde ich dieses Archetype (bzw. in welchem Catalog/Repository)?

Wenn ichs per CMD mache, also

mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp

erhalte ich den Fehler:

Embedded error: Unable to add module to the current project as it is not of pack
aging type 'pom'


Mein Projekt ist ja auch <packaging>war</packaging> ???
 
Zuletzt bearbeitet:

byte

Top Contributor
Leg die Datei doch einfach an!? Ist doch nun wirklich nicht so schwer.

Oder leg ein Projekt mit der IDE an und kopier die web.xml von dort rüber.
 

pocketom

Bekanntes Mitglied
Hab ich gemacht, mich hat nur interessiert worans lag. Aber du hast recht, da ist ja eh fast nichts drin, ein Dummy quasi.
 

pocketom

Bekanntes Mitglied
Habs gefunden, es ging deshalb nicht weil der Catalog auf "NExus Indexer" stand. Stellt man das auf "internal" dann klappts auch mit dem webapp Archetype :)


Nun hab ich nur noch ein Problem:

Es läuft prima wenn ich mir Client- und (Standalone)Servercode zusammen generieren lasse, der Client will aber nicht wenn ich das ganze mit Maven auf dem Tomcat deploye:


Java:
20.07.2009 17:24:02 org.apache.cxf.phase.PhaseInterceptorChain doIntercept
INFO: Interceptor has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not send Message.
	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:64)
	at org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:236)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:471)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:301)
	at org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:253)
	at org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:73)
	at org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:121)
	at $Proxy39.sendEnqueueLabelRequest(Unknown Source)
	at com.eurofinsdna.services.labelservice.LabelQueuing_LabelServiceHttpSoap12Endpoint_Client.main(LabelQueuing_LabelServiceHttpSoap12Endpoint_Client.java:45)
Caused by: java.io.IOException: Not Found
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:2064)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:2015)
	at org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1940)
	at org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:66)
	at org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:627)
	at org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)
	... 8 more

Was könnte da noch faul sein?



[EDIT]
Wenn ich den Standalone Server starte dann kann ich unter http://localhost:8080/MyService auch per Browser zugreifen, ich bekomme halt ein soap-fault was aber ok ist da ich so ja nur checken will ob mein Service erreichbar ist.

Wenn ich das war File MyService.war auf dem Tomcat deploye (manuell), dann bekomme ich unter http://localhost:8080/MyService einen 404 Error (der Standalone Server ist natürlich gestoppt, Tomcat gestartet). Im WSDL File unter MyService/WEB-INF/wsdl/MyService.wsdl ist jedoch exakt die selbe Serive URL (<soap12:address location="http://localhost:8080/MyService"/>) eingetragen???
 
Zuletzt bearbeitet:

byte

Top Contributor
Normalerweise rufst Du eine Webapp so auf: http://localhost:8080/contextRoot/MyService

Musst Du mal gucken, wie der ContextRoot in Deinem Fall ist. Das kann z.B. der Name der War Datei sein (wenn Du beim Tomcat per Tomcat Manager deployst) oder auch die ArtifactId, wenn Du mit Mavens tomcat:run einen Embedded Tomcat startest.

IdR wird beim Deployment geloggt, wie die genaue Adresse der Webapp lautet (inkl. Context Root).
 

pocketom

Bekanntes Mitglied
Ich habe jetzt nochmal beide Varianten probiert - Fehlanzeige :-(


1. Variante: Lasse ich es über mvn tomcat:run laufen, so schreibt er mir in der Commandline am Ende:

Code:
[INFO] [tomcat:run]
[INFO] Running war on http://localhost:8080/cxf-test-service
[INFO] Creating Tomcat server configuration at N:\workspace\java\cxf-test-servic
e\target\tomcat
21.07.2009 09:55:47 org.apache.catalina.startup.Embedded start
INFO: Starting tomcat server
21.07.2009 09:55:47 org.apache.catalina.core.StandardEngine start
INFO: Starting Servlet Engine: Apache Tomcat/6.0.16
21.07.2009 09:55:48 org.apache.coyote.http11.Http11Protocol init
INFO: Initializing Coyote HTTP/1.1 on http-8080
21.07.2009 09:55:48 org.apache.coyote.http11.Http11Protocol start
INFO: Starting Coyote HTTP/1.1 on http-8080

cxf-test-service ist die ArtifactID. Nun habe ich probiert http://localhost:8080/cxf-test-service, http://localhost:8080/cxf-test-service/MyService usw. Dabei ist mir aufgefallen das z.B. http://localhost:8080/cxf-test-serviXXX, also einfach falsch geschrieben, eine weisse Seite im Browser liefert, tippt mans aber korrekt ein dann liefert Tomcat:

Code:
HTTP Status 404 - /cxf-test-service/

type Status report

message /cxf-test-service/

description The requested resource (/cxf-test-service/) is not available.



2. Variante Manueller Upload des WAR Files:

Das Logging habe ich auf 'Debug' gestellt so das alles in den Logs landen müsste. Mehrfach deployed und wieder undeployed

manager.2009-07-21.log, man sieht aber irgendiwe nur das undeploy
Code:
INFO: HTMLManager: undeploy: Undeploying web application at '/MyService'
21.07.2009 09:47:47 org.apache.catalina.core.ApplicationContext log
INFO: HTMLManager: list: Listing contexts for virtual host 'localhost'
21.07.2009 09:48:13 org.apache.catalina.core.ApplicationContext log
INFO: HTMLManager: undeploy: Undeploying web application at '/MyService'

catalina.2009-07-21.log
Code:
21.07.2009 10:41:35 org.apache.catalina.startup.Catalina start
INFO: Server startup in 319 ms
21.07.2009 10:41:44 org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive MyService.war
21.07.2009 10:41:51 org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Java\apache-tomcat6.0\Tomcat 6.0\webapps\LabelQueuingService0.1\WEB-INF\lib\geronimo-servlet_2.5_spec-1.2.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class
21.07.2009 10:41:51 org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(C:\Java\apache-tomcat6.0\Tomcat 6.0\webapps\LabelQueuingService0.1\WEB-INF\lib\servlet-api-2.5-6.1.6.jar) - jar not loaded. See Servlet Spec 2.3, section 9.7.2. Offending class: javax/servlet/Servlet.class

Die jar not loaded soll man ja angeblich ignorieren können...? Mehr Infos finde ich nicht, im Tomcat Manager ist der Service ebenfalls eingetragen und gestartet. Unter localhost:8080/MyService gibts wieder den 404, allerdings bekommt man jetzt keine weissen Seiten wenn man sich vertippt sondern immer 404. D.h. bei Variante 1 muss unter localhost:8080/ArtifactID irgendwas angesprochen worden sein, anders kann ichs mir nicht erklären.


Bin mit meiner Weisheit langsam echt am Ende :-(
 

byte

Top Contributor
Also normalerweise solltest Du unter folgenden URLs Ergebnisse bekommen:

http://localhost:8080/myContextRoot/myWebservice?wsdl - zeigt die WSDL Datei
http://localhost:8080/myContextRoot/myWebservice/getSomething - Methodenaufruf
http://localhost:8080/myContextRoot/myWebservice/doSomething?param=... - Methodenaufruf mit Parametern


Hier gibts gute CXF Tutorial zur Integration mit Spring:
- Web Services with Spring 2.5 and Apache CXF 2.0 - Wheeler Software
- Make Web Services Transparent with Spring 2.5 and Apache CXF 2.0 - Wheeler Software

Haben bei mir bestens funktioniert.
 

Noctarius

Top Contributor
Wobei myContextRoot eben MyService wäre (zu mindestens im obigen Falle), außer die context.xml würde was anderes definieren.
 

byte

Top Contributor
Wieso denn MyService? Der ContextRoot ist doch das Verzeichnis, in dem die Webapp auf dem Tomcat deployed ist. Bei Mavens tomcat:run nimmt er da die ArtifactId, ansonsten ist es der Name des War Files, falls nix anderes angegeben wurde.

MyService ist doch in diesem Fall der Name des Servlets, unter dem der Webservice läuft.
 

pocketom

Bekanntes Mitglied
Nein, das geht auch nicht, habs probiert. Normal muss es die Service URL sein so wie im WSDL eingetragen, also nur localhost:8080/MyService. Lässt man den generierten Server standalone laufen (Jetty glaube ich), dann funkts einwandfrei, das ist was ich nicht verstehe.

in der web.xml steht nicht viel drin (hab sie so gelassen wie sie generiert wurde):

Code:
<!DOCTYPE web-app PUBLIC
 "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
 "http://java.sun.com/dtd/web-app_2_3.dtd" >

<web-app>
  <display-name>CXF Testproject</display-name>
</web-app>

Installiert man das WAR manuell im TC manager dann trägt er auch brav "CXF Testproject" in die zweite Spalte ein.

http://localhost:8080/myContextRoot/myWebservice?wsdl funktioniert auch prima, aber nur wenn ich den Standalone starte (myContextRoot ist in dem Fall leer!). Über TC gehts nicht, egal welche Combo ich für ContextRoot/MyWebService auch probiere.
 

Noctarius

Top Contributor
Wieso denn MyService? Der ContextRoot ist doch das Verzeichnis, in dem die Webapp auf dem Tomcat deployed ist. Bei Mavens tomcat:run nimmt er da die ArtifactId, ansonsten ist es der Name des War Files, falls nix anderes angegeben wurde.

MyService ist doch in diesem Fall der Name des Servlets, unter dem der Webservice läuft.

INFO: Deploying web application archive MyService.war

Da :D
 

Noctarius

Top Contributor

byte

Top Contributor
Im Zweifel einfach mal auf dem Tomcat nachgucken, in welchem Verzeichnis die Webapp liegt.

Aber wenn die web.xml leer ist, dann ist auch kein Servlet da, das man in dieser Webapp aufrufen könnte!?
 

pocketom

Bekanntes Mitglied
Bist sicher das Servlet-Transport das richtige ist? Ich mach kein JSP... Wir wollen auf den Dienst von verschiedenen Plattformen(Delphi, C#, Java) mit SOAP zugreifen, deshalb das gemeinsame WSDL als Basis. So wie ich das gelesen habe braucht man doch eine Klasse die von HttpServlet abgeleitet ist damit das klappt oder?

Habs aber trotzdem mal probiert, aber es klappt leider auch nicht:

Code:
<web-app> 
  <servlet> 
    <servlet-name>CXFServlet</servlet-name> 
    <display-name>CXF Servlet</display-name> 
    <servlet-class> 
        com.mycompany.services.myservice.MyServiceImpl 
    </servlet-class> 
  </servlet> 
 
  <servlet-mapping> 
    <servlet-name>CXFServlet</servlet-name> 
    <url-pattern>/MyService</url-pattern> 
  </servlet-mapping> 
</web-app>

Siehst du evtl. einen Fehler?
 

Noctarius

Top Contributor
Wenn dein WAR-File auch MyService heißt und du von Hand deployest und du in der context.xml das Context-Root nicht überschrieben hast, ist mit dieser web.xml deine Adresse folgende:

Code:
http://localhost:8080/MyService/MyService
 

byte

Top Contributor
Bist sicher das Servlet-Transport das richtige ist? Ich mach kein JSP... Wir wollen auf den Dienst von verschiedenen Plattformen(Delphi, C#, Java) mit SOAP zugreifen, deshalb das gemeinsame WSDL als Basis. So wie ich das gelesen habe braucht man doch eine Klasse die von HttpServlet abgeleitet ist damit das klappt oder?

Habs aber trotzdem mal probiert, aber es klappt leider auch nicht:

Code:
<web-app> 
  <servlet> 
    <servlet-name>CXFServlet</servlet-name> 
    <display-name>CXF Servlet</display-name> 
    <servlet-class> 
        com.mycompany.services.myservice.MyServiceImpl 
    </servlet-class> 
  </servlet> 
 
  <servlet-mapping> 
    <servlet-name>CXFServlet</servlet-name> 
    <url-pattern>/MyService</url-pattern> 
  </servlet-mapping> 
</web-app>

Siehst du evtl. einen Fehler?

Wie sieht denn MyServiceImpl aus? Benutzt Du CXF mit Spring oder ohne? Falls mit, dann muss
Code:
org.apache.cxf.transport.servlet.CXFServlet
in die web.xml (siehe Link oben). Falls Du ohne Spring arbeitest, dann musst Du ein Servlet von CXFNonSpringServlet ableiten (siehe Link oben).

Auf jeden Fall: siehe Link oben :oops:
 

pocketom

Bekanntes Mitglied
Wenn dein WAR-File auch MyService heißt und du von Hand deployest und du in der context.xml das Context-Root nicht überschrieben hast, ist mit dieser web.xml deine Adresse folgende:

Code:
http://localhost:8080/MyService/MyService


Korrekt. Da tut sich jetzt was. Allerdings das was ich bereits geahnt habe...

Code:
avax.servlet.ServletException: Class com.mycompany.services.MyServiceImpl is not a Servlet
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
	java.lang.Thread.run(Unknown Source)

root cause

java.lang.ClassCastException: com.mycompany.services.MyServiceImpl cannot be cast to javax.servlet.Servlet
	org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:849)
	org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
	org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:454)
	java.lang.Thread.run(Unknown Source)


Oben habe ich ja grob beschrieben was ich vorhabe, falls das nicht reicht gebe ich gern mehr Auskunft.
 

pocketom

Bekanntes Mitglied
Wenn ich den Client (auch von WSDL2JAVA generiert, so wie der Server) starte kommen erstmal jede Menge Spring Sachen:

Code:
21.07.2009 12:28:49 org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Refreshing org.apache.cxf.bus.spring.BusApplicationContext@1201a25: display name [org.apache.cxf.bus.spring.BusApplicationContext@1201a25]; startup date [Tue Jul 21 12:28:49 CEST 2009]; root of context hierarchy

Sollte also Spring sein nehme ich mal an. Ich habe also der MyServiceImpl Klasse ein extends CXFServlet hinzugefügt.

Jetzt kommt wenn ich die URL aufrufe:

Code:
No service was found.

Natürlich habe ich http://localhost:8080/MyService/MyService?wsdl auch probiert - nix.



[EDIT] die non Spring auch getestet, da kommt dann wieder der 404. Es muss also Spring sein...
 
Zuletzt bearbeitet:

byte

Top Contributor
So kommen wir nicht weiter. Dir scheint es am Knowhow zu mangeln, wie CXF überhaupt funktioniert. Wirf doch nochmal einen Blick in die Doku oder mache das von mir oben gepostete Tutorial Schritt für Schritt durch.
 

pocketom

Bekanntes Mitglied
Die CXF Doku habe ich weitestgehend durch, auf diesem Wege ist ja auch ein funktionierender Standalone Server zustande gekommen. Es geht jetzt wirklich nur noch drum das mit Maven erzeugte WAR auf Tomcat zu deployen und laufen lassen. Ich blick ehrlich gesagt halt grad einfach nicht mehr durch worans noch scheitern könnte... :-(
 

pocketom

Bekanntes Mitglied
Hier die MyServiceImpl:

Der WSDL2Java Generator hat wiegesagt das "extends CXFServlet" nicht selbst generiert! Sicher das man das als Servlet starten muss? Ich verstehe einfach nicht wieso das Standalone Teil so funktionert wie es ist???? Normal sollte der WSDL2Java doch alles Server und Client Stubs soweit fertig machen das man nur noch seine "Business Logic" implementiert. Hat unter Axis2 prima geklappt, nur die generierten Klassen haben mir nicht so gut gefallen wie die von JAXB generierten.


Java:
/**
 * Please modify this class to meet your needs
 * This class is not complete
 */

package com.mycompany.services;

import java.util.logging.Logger;

import org.apache.cxf.transport.servlet.CXFServlet;

/**
 * This class was generated by Apache CXF 2.2.2
 * Tue Jul 21 09:55:43 CEST 2009
 * Generated source version: 2.2.2
 * 
 */

@javax.jws.WebService(
                      serviceName = "MyService",
                      portName = "LabelServiceHttpSoap12Endpoint",
                      targetNamespace = "http://mycompany.com/services/myservice",
                      wsdlLocation = "file:/N:/workspace/java/cxf-test-service/src/main/webapp/WEB-INF/wsdl/myservice.wsdl",
                      endpointInterface = " com.mycompany.services.MyService")
                      
public class MyServiceImpl extends CXFServlet implements MyService{

    /**
	 * 
	 */
	private static final long serialVersionUID = 7612214873733133739L;
	private static final Logger LOG = Logger.getLogger(LabelQueuingImpl.class.getName());

    /* (non-Javadoc)
     * @see com.mycompany.services.MyService#sendRequest(com.mycompany.services.requestElement  parameters )*
     */
    public com.mycompany.services.MyServiceResponse sendRequest(com.mycompany.services.requestElement parameters) { 
        LOG.info("Executing operation sendRequest");
        System.out.println(parameters);
        try {
            com.eurofinsdna.services.labelservice.DefaultResponse _return = new MyServiceResponse ();
            _return.setResult("HELLO123");
            return _return;
        } catch (Exception ex) {
            ex.printStackTrace();
            throw new RuntimeException(ex);
        }
    }

}



Hier der Standalone Server:
Ich will nix weiter als das genau das selbe unter Tomcat läuft (verwaltet sich besser, monitoring, usw...)
Java:
package com.mycompany.services;

import javax.xml.ws.Endpoint;

/**
 * This class was generated by Apache CXF 2.2.2
 * Tue Jul 21 09:55:43 CEST 2009
 * Generated source version: 2.2.2
 * 
 */
 
public class MyService_LabelServiceHttpSoap12Endpoint_Server{

    protected MyService_MyServiceHttpSoap12Endpoint_Server() throws Exception {
        System.out.println("Starting Server");
        Object implementor = new LabelQueuingImpl();
        String address = "http://localhost:8080/MyService";
        Endpoint.publish(address, implementor);
    }
    
    public static void main(String args[]) throws Exception { 
        new MyService_MyServiceHttpSoap12Endpoint_Server();
        System.out.println("Server ready..."); 
        
        Thread.sleep(5 * 60 * 1000); 
        System.out.println("Server exiting");
        System.exit(0);
    }
}
 
Zuletzt bearbeitet:

Noctarius

Top Contributor
Dazu sage ich jetzt nichts mehr *schon mal ein Brett reicht ums sich gleich gegen den Kopf zu hauen* :D

PS-Tipp: Schonmal daran gedacht, dass dein WebService einen Namen haben könnte ;)
 

pocketom

Bekanntes Mitglied
Du meinst serviceName = "MyService" (da stand vorher was anderes drin)? Ich habe um hier zu posten meinen eigenen "echten" Servicenamen immer gegen MyService ersetzt, ebenso wie ich Namespaces anonymisiert habe ;-)

Damit hat es also nichts zu tun falls du das meinst...


@byto: Hab dein Tutorial gerade durchgelesen. Ich checke nochmal web.xml configuration und appContext.xml configuration. Wie schon erwähnt habe ich aber einen völlig anderen Startpunkt. Ich habe ein WSDL File welches einige XSD Files includiert, daraus werden mit CXF-WSDL2Java (via Maven Plugin) die Sources generiert...
 
Zuletzt bearbeitet:

byte

Top Contributor
Nochmal im Klartext: Dein Webservice muss nicht von CXFServlet ableiten...

Es gibt zwei Möglichkeiten, das ganze mit CXF zum Laufen zu bringen:

1. Mit Spring:
Code:
org.apache.cxf.transport.servlet.CXFServlet
in die web.xml hängen und Spring Konfiguration anlegen (dort wird Dein eigentlicher Service dann verdrahtet). Ein Schritt für Schritt Tutorial gibts hier (den Link hab ich schon vor Ewigkeiten hier gepostet...)

2. Ohne Spring: Eigenes Servlet schreiben und von
Code:
CXFNonSpringServlet
ableiten. Dort die Methode
Code:
loadBus()
überschreiben und den eigenen Service programmatisch verdrahten.

Das steht hier doch alles genau beschrieben. Du musst es nur lesen!? :autsch:
 

pocketom

Bekanntes Mitglied
Hab ich wiegesagt alles durch. Ich mache jetzt folgendes:

Project MyService -> Rightclick -> Delete


und dann fang ich nochmal ganz von vorne an... ;-)
 

pocketom

Bekanntes Mitglied
Juhuu, endlich gelöst :)

Es lag daran das ich in meinem WSDL File auf externe XSD Files verlinkt habe. Im WSDL waren relative Pfade drin, die wurden unter WEB-INF/wsdl/xsd/MyService.xsd nicht gefunden da leider nur das WSDL vom WAR deployed wurde.

Wie krieg ich meine XSDs jetzt auch noch in das WAR File? Ich mag die nicht jedes Mal händisch in den webapp Folder kopieren...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
aze Eclipse Java EE Web Project:Wo liegen die Servlets ? Allgemeines EE 4
S Eclipse: JPA Project in Dynamic Webproject nutzen Allgemeines EE 4
S Eclipse JPA Project Allgemeines EE 8
S Dynamic Web Project mit Eclipse - Vorgehensweise? Allgemeines EE 2
P Dynamic Web Project -> file Allgemeines EE 23
G Web Project und libs Allgemeines EE 4
S Tomcat Application Path bestimmen Allgemeines EE 0
TheWhiteShadow JSF plugins für tomcat webapp Allgemeines EE 0
X Tomcat checkParachute Allgemeines EE 3
C Servlet Tomcat/Jersey findet REST-Service nicht Allgemeines EE 3
J Global JNDI Tomcat Allgemeines EE 0
N WebService WAR-File auf Tomcat-Server Allgemeines EE 1
C WebSocket in Tomcat wirft 404 Allgemeines EE 0
S Eclipse mit Tomcat und Jersey Allgemeines EE 7
S Fehlersuche in Eclipse/Tomcat -> Error-log?? Allgemeines EE 2
S Tomcat und 404 -> von jetzt auf gleich Allgemeines EE 4
L JNDI auf Tomcat mit EE Allgemeines EE 4
E Servlet Tomcat Method Signature Resolution Allgemeines EE 7
J Logging und Monitoring unter Tomcat Allgemeines EE 2
aze Tomcat:Error Pages werden nicht angezeigt Allgemeines EE 4
D JSF JSF 2.0 + ICEFaces + Tomcat 7 Allgemeines EE 3
R Sessionmanagement und Tomcat Allgemeines EE 6
W Tomcat Support mit SLA? Allgemeines EE 3
P Tomcat lädt falsche Datei obwohl richtig angegeben Allgemeines EE 11
N Tomcat funktioniert nach shutdown/startup nicht mehr korrekt Allgemeines EE 9
B Tomcat, JNDI und datasource - Konfiguartion Allgemeines EE 2
JimPanse Tomcat Fehler nach redeploy Allgemeines EE 5
A Java Tomcat findet Website nicht Allgemeines EE 8
S Anfängerfrage Eclipse/Tomcat Allgemeines EE 4
H Installer für Tomcat-Anwendung Allgemeines EE 5
A Tomcat in Eclipse Allgemeines EE 11
T Tomcat: Sessions bleiben zu lange erhalten Allgemeines EE 13
C Tomcat Zugriff auf lokale Dateien Allgemeines EE 2
A Tomcat, Exceptions beim redeploy Allgemeines EE 4
P Hilfe: Tomcat periodischer Absturz Allgemeines EE 5
MQue Tomcat reload Allgemeines EE 4
neurox Tomcat stoppen Allgemeines EE 1
S Unterschied zwischen Tomcat und Application Server? Allgemeines EE 3
MQue Tomcat PermGen Allgemeines EE 7
MQue Tomcat Methodenaufruf Allgemeines EE 3
P Eclipse Tomcat Plugin funktioniert nicht mit externem TC-Server? Allgemeines EE 4
MQue TCP- Verbindung nach Tomcat- Start (global) starten Allgemeines EE 4
reibi Tomcat Proxy eintragen Allgemeines EE 2
R (TOMCAT] Installation Tomcat auf WinXP Allgemeines EE 8
S Tomcat + Eclipse Allgemeines EE 6
T Security Manager in Tomcat Allgemeines EE 2
S Unterschiedliche Pfade bei Tomcat Allgemeines EE 4
ps EJB3 in Tomcat. das hat selbst mich erstaunt Allgemeines EE 18
B Tomcat Manager - .war Datei hochladen. Einfache Frage Allgemeines EE 5
G Probleme im Tomcat - loading WebappClassLoader Allgemeines EE 3
O ApplicationServer vs. Tomcat Allgemeines EE 5
G Verbindung zu Tomcat Allgemeines EE 15
B Tomcat -> Funktions User Credentials hinterlegen Allgemeines EE 7
B fmt:setBundle => Wo liegt die Properties-Datei im Tomcat? Allgemeines EE 3
U Tomcat Compilierproblem Allgemeines EE 2
A Tomcat -- JSP: komisches Problem Allgemeines EE 11
W Speicher-Problem bei WebApp unter Tomcat, Struts, Hibernate Allgemeines EE 3
M Gelegentlicher Absturz Tomcat Anwendung: PermGen Space Allgemeines EE 6
R Error ServletContextListener auf Tomcat 6 Allgemeines EE 2
Y myFaces 1.2 und Tomcat 5.x / 6.0 Allgemeines EE 9
S tomcat session timeout - und was danach? Allgemeines EE 1
A Tomcat startet nicht, Einstellungsfehler? Allgemeines EE 3
S Auf Datei ausserhalb des Tomcat zugreifen Allgemeines EE 4
S JSP / Tomcat / Eclipse / Unable to compile class for JSP Allgemeines EE 4
E JBoss mit existierendem Tomcat nutzen? Allgemeines EE 4
M JSP: Tomcat: Serverfehler 500 nur beim IE. Allgemeines EE 2
G JSF 1.2 unter Netbeans 6 mit Tomcat 6.0 ->Navigationsprob Allgemeines EE 6
O eclipse - tomcat: Problem bei einfachem Webservice Allgemeines EE 16
L Tomcat Service mit JPDA debugging starten Allgemeines EE 2
J Tomcat: "Unable to get connection, DataSource invalid&q Allgemeines EE 8
A web.xml für Servlet in Tomcat 5.5 erstellen Allgemeines EE 2
F Tomcat: zentraler Class-Ordner? Allgemeines EE 2
A web.xml für Servlet in Tomcat erstellen Allgemeines EE 6
T Tomcat: JNDI + JDBC Problem Allgemeines EE 3
N Zugriff auf Webapp nur für localhost definieren (Tomcat) Allgemeines EE 2
byte Tomcat Deployment Problem (HTTP Status 503) Allgemeines EE 8
H Tomcat, MySQL Allgemeines EE 4
B tomcat verbergen Allgemeines EE 3
M classNotFoundexception vom tomcat Allgemeines EE 10
B Liferay + Tomcat Allgemeines EE 4
K tomcat: session-unabhängiges speichern Allgemeines EE 3
G Tomcat übersetzt nichts mehr Allgemeines EE 6
M tomcat beim booten mit starten Allgemeines EE 4
F Serverdienst in Tomcat implementieren Allgemeines EE 14
J Tomcat mit eigener Session-Implementierung Allgemeines EE 15
V tomcat 6 webserver oder was ist sein Sinn? Allgemeines EE 3
G eigener Tomcat-Connector f. propiet. Protokoll via TCP/IP Allgemeines EE 2
J wsdl-tomcat-AXIS Allgemeines EE 2
G Tomcat unter Eclipse starten Allgemeines EE 9
F Tomcat mit 128 MB Ram Allgemeines EE 9
C Unable to query Tomcat Manager: couldn't connect to host Allgemeines EE 2
A Cronjob mit Tomcat starten ? Allgemeines EE 4
B Connection Poll ohne TomCat Allgemeines EE 5
N Tomcat GWT-Anwendung - An beliebiger Stelle schreiben Allgemeines EE 2
E Tomcat Einstellungen Allgemeines EE 10
B Servlet-Api.jar auf JBoss? (Migration von Tomcat zu JBoss) Allgemeines EE 4
H Eine kurze Verständnisfrage zum Tomcat Allgemeines EE 2
S Hibernate, Tomcat und Eclipse treiben mich zum Wahnsinn. Allgemeines EE 2
F webanwendung läuft nicht auf Tomcat Allgemeines EE 2
M Tomcat, Hibernate, MySQL und die EOFException Allgemeines EE 7

Ähnliche Java Themen

Neue Themen


Oben