Я довольно новичок в Jetty и Servlet. Извините, если это звучит очень просто. Я использую Jetty 6.1.22, Jetty-util-6.1.22 и Selenium 2.0b2.
Я пытаюсь настроить сервер селен в коде, чтобы я мог избежать ручного процесса запуска селен
сервер на удаленном хосте. В вики [1] отмечается: «Теоретически, этот процесс так же прост, как отображение« DriverServlet »на URL,
но также возможно разместить страницу в облегченном контейнере, таком как Jetty, полностью настроенный в коде "
[Изменить # 1]
Вот что у меня есть, в основном копия кода из вики RemoteWebDriverServer [1].
Если я установлю удаленный хост, как показано ниже, я получу исключение связывания.
public AppServer() throws Exception {
try {
WebAppContext context = new WebAppContext();
context.setContextPath("");
context.setWar(".");
server.addHandler(context);
context.addServlet(DriverServlet.class, "/wd/*");
SelectChannelConnector connector = new SelectChannelConnector();
connector.setHost("MyRemoteHostIPAddress");
connector.setPort(4444);
server.addConnector(connector);
server.start();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception{
new AppServer();
}
}
Вот трассировка стека
2011-06-06 14:39:02.618:INFO::Logging to STDERR via org.mortbay.log.StdErrLog
2011-06-06 14:39:02.633:INFO::jetty-6.1.22
2011-06-06 14:39:02.977:WARN::failed SelectChannelConnector@MyRemoteHostIPAddress:4444: java.net.BindException: Cannot assign requested address: bind
2011-06-06 14:39:02.977:WARN::failed Server@b61fd1: java.net.BindException: Cannot assign requested address: bind
Exception in thread "main" java.net.BindException: Cannot assign requested address: bind
at sun.nio.ch.Net.bind(Native Method)
at sun.nio.ch.ServerSocketChannelImpl.bind(Unknown Source)
at sun.nio.ch.ServerSocketAdaptor.bind(Unknown Source)
at org.mortbay.jetty.nio.SelectChannelConnector.open(SelectChannelConnector.java:216)
at org.mortbay.jetty.nio.SelectChannelConnector.doStart(SelectChannelConnector.java:315)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.Server.doStart(Server.java:235)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at AppServer.main(AppServer.java:31)
[Изменить # 2]
Пожалуйста, не обращайте внимания на мои первые два комментария ниже. Я редактировал вопрос.
Что-то я пропускаю или делаю неправильно?
Спасибо,
-Nilesh
[1] http://code.google.com/p/selenium/wiki/RemoteWebDriverServer