Я только начал создавать свое первое приложение-рестарт. Я следил за учебником по первому шагу. Я создал все файлы в точности, как указано, и сервер отлично работает, когда я запускаю его, но потом, когда я называю обслуживание через почтальона я получаю эту ошибку:RestLet: Исключено возникновение записи объекта ответа
Ошибка:
2015-04-20 20:39:53 0:0:0:0:0:0:0:1 - - 8182 GET /firstSteps/hello - 200 12 0 156 http://localhost:8182 Mozilla/5.0 (Windows NT 6.3; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.90 Safari/537.36 -
An exception occured writing the response entity
java.lang.ClassCastException: org.restlet.data.Header cannot be cast to org.restlet.engine.header.Header
at org.restlet.ext.simple.internal.SimpleCall.writeResponseHead(SimpleCall.java:304)
at org.restlet.engine.adapter.ServerCall.sendResponse(ServerCall.java:450)
at org.restlet.engine.adapter.ServerAdapter.commit(ServerAdapter.java:187)
at org.restlet.engine.adapter.HttpServerHelper.handle(HttpServerHelper.java:144)
at org.restlet.ext.simple.internal.SimpleContainer.handle(SimpleContainer.java:80)
at org.simpleframework.http.core.Dispatcher.dispatch(Dispatcher.java:121)
at org.simpleframework.http.core.Dispatcher.run(Dispatcher.java:103)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Error while handling an HTTP server call
Вот мой код:
Helloworld Класс:
package smartRoom;
import org.restlet.resource.Get;
import org.restlet.resource.ServerResource;
/**
* Resource which has only one representation.
*/
public class Helloworld extends ServerResource {
@Get
public String represent() {
return "hello, world";
}
}
и вот мой ар класс применения:
package smartRoom;
import org.restlet.Application;
import org.restlet.Component;
import org.restlet.Restlet;
import org.restlet.data.Protocol;
import org.restlet.routing.Router;
public class HelloworldAppilcation extends Application {
public static void main(String[] args) throws Exception {
// Create a new Component.
Component component = new Component();
// Add a new HTTP server listening on port 8182.
component.getServers().add(Protocol.HTTP, 8182);
// Attach the sample application.
component.getDefaultHost().attach("/firstSteps",
new HelloworldAppilcation());
// Start the component.
component.start();
}
/**
* Creates a root Restlet that will receive all incoming calls.
*/
@Override
public synchronized Restlet createInboundRoot() {
// Create a router Restlet that routes each call to a new instance of HelloWorldResource.
Router router = new Router(getContext());
// Defines only one route
router.attach("/hello", Helloworld.class);
return router;
}
}
Я не смог найти контент в Интернете относительно этой ошибки. Я заново создал проект с нуля, следуя инструкциям на тройник, и по-прежнему получил ту же ошибку. Я не уверен, что я делаю неправильно, и любая помощь будет очень признательна.
Update
да, я могу подтвердить, порт открыт и прослушивания
обновления Два
http://restlet.com/technical-resources/restlet-framework/guide/2.2/editions/jse/overview
Я теперь также попробовал maven и получил тот же результат.
Update Три
Я дал ему еще один шанс сегодня, и начал с нуля повторно загружать все, и это работает прекрасно в этот раз. Не совсем понятно, в чем была проблема, но, скорее всего, это было связано с использованием версии restlet.
Можете ли вы подтвердить, что ваш порт открыт и прослушивает трафик? – ryekayo
@ryekayo Да, я могу, у меня есть фотография, добавленная к вопросу. – Bawn
Можете ли вы добавить ссылку учебника на свое следующее? – ryekayo