Gibt es eine Möglichkeit, einen REST-Service mit spring 3.0 ohne einen Servlet-Container zu erstellen? Weil ich keinen Anwendungsserver verwenden möchte. Ich habe versucht, REST-Dienste mit SimpleHttpInvokerServiceExporter und Spring MVC zu erstellen, aber ich habe einen java.lang.NoClassDefFoundError: javax/servlet/ServletException
, weil ich keinen Servlet-Container verwende. Mein Code sieht wie folgt aus:REST-Service mit Spring 3 auf JDK6 HTTP-Server
<beans>
...
<bean name="serviceFacadeExporter"
class="org.springframework.remoting.httpinvoker.SimpleHttpInvokerServiceExporter">
<property name="service" ref="serviceFacade" />
<property name="serviceInterface" value="facade.ServiceFacade" />
</bean>
<bean id="httpServer"
class="org.springframework.remoting.support.SimpleHttpServerFactoryBean">
<property name="contexts">
<map>
<entry key="/api/" value-ref="serviceFacadeExporter" />
</map>
</property>
<property name="port" value="8082" />
</bean>
...
</beans>
Und der Service sieht wie folgt aus
@Controller
public class ServiceFacadeImpl implements ServiceFacade {
@Override
@RequestMapping(value = "/protein/search/{searchString}")
public long searchProtein(@PathVariable String searchString) {
return 0;
}
}
Erster REST bedeutet HTTP.So Sie Container Ihre REST-Anforderungen dienen müssen Servlet gefunden werden. – sathis
Ich möchte den Jdk6 Http Server verwenden. Also habe ich http ohne einen Servlet-Container. –
Warum möchten Sie nicht in einem Servlet-Container laufen? –