Ist es möglich, CXF mit Tomcat und ohne Feder zu verwenden? Wenn das so ist, wie?CXF ohne Feder
Antwort
Ich nehme an, Sie wollen einen Web Service mit CFX erstellen, dass es in Tomcat laufen würde? Dies ist absolut möglich und Spring ist optional. Sie müssen es nicht benutzen, wenn Sie nicht wollen.
CXF soll mit Feder verwendet werden. Es ist seltsam, dass du es ohne es benutzen willst.
Sie könnten NoSpringServletServer ausprobieren und die ServerFactoryBean oder JaxWS API verwenden.
Hier ist der Code für die NoSpringServletServer.
Aber Sie werden immer noch brauchen Frühling als Abhängigkeit. Das grundlegende JaxWS kann ohne Feder gemacht werden. Aber für fast alles andere brauchen Sie zumindest federkern.jar
Eigentlich dachte ich darüber nach, eine Webapp zu erstellen, die als Kriegsdatei in tomcat, nicht als eigenständiger Server, eingesetzt wird. Also brauche ich auch keinen Jetty. –
Eine Webapp wird auf Tomcat wie in jedem anderen Servlet-Container (fast) bereitgestellt. Das Beispiel zeigt einen eigenständigen Server, das Servlet kann jedoch von einer web.xml aus referenziert werden. CXFNonSpringServlet erweitert Servlet, das Sie kennen. –
Dieser Link scheint nicht mehr gültig zu sein. Hier ist eine alternative Informationsquelle: http://cxf.apache.org/docs/servlet-transport.html#ServletTransport-UsingtheservetransporttransportohneSpring –
Ich glaube nicht, dass es möglich ist, CXF völlig unabhängig von der Feder in Tomcat zu verwenden.
Grund ist, dass, wenn ich eine Maven Abhängigkeitsbaum Liste (MVN Abhängigkeit: Baum) tue für ein absolutes Minimum CXF webservice, können die folgenden aufgeführt ist (was zeigt, dass es Frühling braucht)
+- org.apache.cxf:cxf-rt-core:jar:2.2.2:compile
[INFO] | | +- com.sun.xml.bind:jaxb-impl:jar:2.1.9:compile
[INFO] | | +- org.springframework:spring-core:jar:2.5.5:compile
[INFO] | | +- org.apache.geronimo.specs:geronimo-javamail_1.4_spec:jar:1.6:compile
org.apache.cxf:cxf-rt-transports-http:jar:2.2.2:compile
[INFO] \- org.springframework:spring-web:jar:2.5.5:compile
[INFO] +- commons-logging:commons-logging:jar:1.1.1:compile
verwenden Sie einfach
Ich stimme zu, dass der Abhängigkeitsbaum noch über transitive Federabhängigkeiten verfügt, die mit @bercolax vereinbart wurden, programmatisch kann die Spring-API-XML-Konfiguration vermieden werden – Ashoka
Sie konfigurieren CXF programmgesteuert ohne Spring. Siehe die Codebeispiele here. Wenn Sie den Webanwendungskontextpfad zusammen mit der Endpunkterweiterung - Greeter im Codebeispiel - einfügen, wird im Browser eine Übersichtsseite mit einer Verknüpfung zur WSDL angezeigt.
Keine Feder notwendig, wodurch CXF einen sehr geringen Platzbedarf hat. Ich fand die einzigen Gläser notwendig zu sein (für CXF 2.2.1):
- XmlSchema-1.4.5.jar
- cxf-2.2.3.jar
- wsdl4j-1.6.2.jar
Ich glaube Neethi-2.0.4.jar kann auch für einige Konfigurationen notwendig sein, aber ich habe es nicht benötigt.
Viel Spaß!
Nun, ich glaube, er fragt, wie das gemacht werden könnte, nicht nur, wenn es gemacht werden kann. – liltitus27