moin moin zusammen .. folgendes problem .. ich versuche gerade eine webanwendung zu schreiben, die eingaben aus formularen oder ähnlichem mit hilfe eines servlets zu verarbeitet. das servlet soll die empfangenen daten dann an einen webservice geben, und die rückgabewerte dann wieder verarbeiten. der testwebservice und der testclient auf konsolenbasis funktionieren ohne probleme. ablauf ist also folgender: html-file -> servlet -> webservice -> service -> ausgabe hier erstmal der code vom servlet Code: import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.xml.namespace.QName; import org.apache.axiom.om.OMElement; import org.apache.axis2.AxisFault; import org.apache.axis2.addressing.EndpointReference; import org.apache.axis2.client.Options; import org.apache.axis2.client.ServiceClient; import org.apache.axis2.databinding.utils.BeanUtil; import org.apache.axis2.engine.DefaultObjectSupplier; import de.Hotel.Hotel; import de.Hotel.RoomType; /** * Servlet implementation class for Servlet: SearchHotel * */ public class SearchHotel extends javax.servlet.http.HttpServlet implements javax.servlet.Servlet { static final long serialVersionUID = 1L; /* * (non-Java-doc) * * @see javax.servlet.http.HttpServlet#HttpServlet() */ public SearchHotel() { super(); } public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException, AxisFault { String hotelCode = request.getParameter("hotelcode"); System.out.println(hotelCode); ServiceClient sender = new ServiceClient(); Options options = sender.getOptions(); EndpointReference targetEPR = new EndpointReference( "http://localhost:8080/axis2/services/SimpleHotelService"); options.setTo(targetEPR); // Die Operation "findHotel" soll aufgerufen werden QName opFindHotel = new QName("http://axishotels.de/xsd", "findHotel"); // Die Parameter für die Operation "findHotel" // werden definiert... Object[] opArgs = new Object[] { hotelCode }; // ...und ein AXIOM-OMElement mit der // Request-Nachricht erzeugt OMElement serviceRequest = BeanUtil.getOMElement(opFindHotel, opArgs, null, false, null); // Der Request wird an den Service abgeschickt. // Der Aufruf erfolgt synchron mit dem // Kommunikationsmuster IN-OUT OMElement serviceResponse = sender.sendReceive(serviceRequest); // Diese Typen sollte der Web Service zurückliefern... Class[] returnTypes = new Class[] { Hotel.class }; // ...und werden mit einer Hilfsroutine in ein // Objekt-Array überführt Object[] result = BeanUtil.deserialize(serviceResponse, returnTypes, new DefaultObjectSupplier()); Hotel hotel = (Hotel) result[0]; if (hotel == null) { System.out.println("No entry for code: " + hotelCode); return; } System.out.println("Hotel Name: " + hotel.getHotelName()); System.out.println("Hotel Code: " + hotel.getHotelCode()); System.out.println("City: " + hotel.getCity()); System.out.println("Stars: " + hotel.getNumberOfStars()); for (RoomType roomType : hotel.getRoomTypes()) { System.out.println("\n RoomCode : " + roomType.getRoomCode()); System.out.println(" Price EUR: " + roomType.getPriceInEuros()); System.out.println(" with TV : " + roomType.isRoomWithTV()); } } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub } } wenn ich die ganzen ws-geschichten aus dem servlet entferne, und meinetwegen Code: System.out.println(hotelCode); mache, funktioniert das auch wunderbar und er gibt den hotelcode in der konsole aus. wenn ich allerdings den ws-kram drin lasse, bekomme ich folgende fehlermeldung: Code: type Exception report message description The server encountered an internal error () that prevented it from fulfilling this request. exception javax.servlet.ServletException: Error instantiating servlet class SearchHotel org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179) org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:619) root cause java.lang.NoClassDefFoundError: org/apache/axis2/engine/ObjectSupplier java.lang.Class.getDeclaredConstructors0(Native Method) java.lang.Class.privateGetDeclaredConstructors(Class.java:2389) java.lang.Class.getConstructor0(Class.java:2699) java.lang.Class.newInstance0(Class.java:326) java.lang.Class.newInstance(Class.java:308) org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179) org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84) org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104) org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:156) org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241) org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580) org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447) java.lang.Thread.run(Thread.java:619) note The full stack trace of the root cause is available in the JBossWeb/2.0.0.GA logs. habe auch schon nach den einzelnen elementen der fehlermeldung gesucht, allerdings bin ich diesbezüglich noch nicht wirklich viel schlauer :-/ vielleicht hat ja jemand von euch ne idee..