- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我使用 Netbeans 7.0.1 和 JDK 1.7 创建了一个 Netbeans 平台应用程序。
我使用嵌入式 Jetty 7.4.5(由一个 Web 服务和几个 servlet 组成)在一个普通模块上实现了我自己的 Web 应用程序,并创建了一个包含所有 Jetty jar 文件和“jetty- j2sehttpspi-7.4.5.v20110725.jar”,我需要能够发布 Web 服务的端点。 Web 模块依赖于 Jetty 模块。
我使用的代码是这样的:
System.setProperty("com.sun.net.httpserver.HttpServerProvider",
"org.mortbay.jetty.j2sehttpspi.JettyHttpServerProvider");
server = new Server();
JettyHttpServerProvider.setServer(server);
//We read the config file
String[] configFiles = {"etc/jetty.xml"};
for(String configFile : configFiles) {
XmlConfiguration configuration =
new XmlConfiguration(new File(configFile).toURI().toURL());
configuration.configure(server);
}
// Web Services
QueryWeb qWS = new QueryWeb();
Endpoint.publish("http://0.0.0.0:" +
(server.getConnectors()[0].getPort()) + "/ws", qWS);
// Servlets
HandlerCollection hc = (HandlerCollection)server.getHandler();
ServletContextHandler sch =
new ServletContextHandler(ServletContextHandler.SESSIONS);
sch.setContextPath("/web");
sch.addServlet(stream.class, "/stream");
// We add the servlet handler to the server's context handler collection
// because it's the one used by the Web Service Endpoint
ContextHandlerCollection chc = (ContextHandlerCollection)hc.getHandlers()[0];
chc.addHandler(sch);
server.start();
当我尝试运行应用程序时,在“Endpoint.publish”调用后出现以下错误:
Exiting C:\Program Files (x86)\NetBeans 7.0\harness\run.xml.
Exiting C:\Program Files (x86)\NetBeans 7.0\harness\run.xml.
C:\Program Files (x86)\NetBeans 7.0\harness\suite.xml:500:
The following error occurred while executing this line:
C:\Program Files (x86)\NetBeans 7.0\harness\run.xml:225:
The following error occurred while executing this line:
C:\Program Files (x86)\NetBeans 7.0\harness\run.xml:193:
The application is already running within the test user directory.
You must shut it down before trying to run it again.
据我所知,这是因为系统找不到“org.mortbay.jetty.j2sehttpspi.JettyHttpServerProvider”类。因此它默认返回到 JDK 中包含的 Web 服务器,这会导致冲突,因为我们让两个 Web 服务器(Jetty 和 JDK 的)试图在同一端口(在本例中为 8081)上运行。
我设法解决此问题的唯一方法是将所有 Jetty jar 文件复制到 JRE 的“lib/ext”文件夹中(仅复制“jetty-j2sehttpspi-7.4.5.v20110725.jar”不会导致错误,但服务器不会启动)。通过这种方式,系统可以找到它需要的类及其所有依赖项。
我想即使 NetBeans 使用它自己的类路径加载器,System.setProperty 方法也会忽略它并尝试访问标准类路径,因为 NetBeans 平台应用程序实际上不允许您更改直接类路径(这会破坏由 NetBeans 平台管理模块的全部目的),我真的不知道如何让它使用包装器模块中包含的库。
我可以继续使用我找到的临时解决方案开发应用程序,但老实说,将内容复制到 JRE 文件夹中不是一个可接受的解决方案,最终会导致客户端机器中的分发和安装问题(已经在 Mac OS 中尝试过)机器,我什至不知道 JRE 把它的库放在哪里来尝试做同样的卑鄙把戏)。
因此,我想问问你们是否有解决这个特定问题的方法,或者是否有人可以更好地解释正在发生的事情以及我如何解决它而不必重新创建我的项目的整个架构(这实际上是有效的好的,除了这个有点不方便)。
提前致谢!
最佳答案
将您的问题写到邮件列表 dev@platform.netbeans.org,您更有可能得到答案。
关于java - 使用 System.setProperty 在 NetBeans 平台应用程序中创建嵌入式 Jetty 端点时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7214515/
我有一个 UserPass 类,它有 2 个属性:User user;字符串密码用户还有其他属性,如用户名、系统 ID 等。 我在 UserPass 上调用了 setProperty ("userna
在设计用于在自定义芯片上运行的 Java 应用程序中找到以下代码行。 System.setProperty("ssl.SocketFactory.provider", "some.custom.soc
当我使用 $wnd.document.getElementById('id'); 它运行成功,我得到了元素。但是,当我尝试像这样设置 property 时: $wnd.document.getElem
我想实现从默认(Windows HKCU)到我自己的(文件系统)的首选项迁移。一切都分开工作,但不能一起工作: public static void main(String[] args){ try
我遇到过非常奇怪的情况。不确定,这是否符合逻辑,但请麻烦。 我有两个元素,一个是jar 文件,第二个是ETL 工具,它完全是一个基于Java 的高级ETL 工具。 我已将我的 jar 导入到一个 ET
考虑以下类: class foo : public QObject { Q_OBJECT Q_ENUMS(E) Q_PROPERTY(E x READ x WRITE setx) pu
在阅读了SetProperty上的页面并查看了我在此处和其他地方可以找到的尽可能多的示例之后,我仍然无法将SetProperty设置为自定义操作ID的After或Before来使用。该文档看起来很简单
我使用 beans/form 处理在登录屏幕上获取输入参数,然后使用这些参数尝试将用户登录到应用程序中。 但是我收到错误 - org.apache.jasper.JasperException: /l
我曾尝试在主方法中使用System.setProperty,没有任何问题,但是当我切换到TestNG作为我的Selenium学习的一部分时,我意识到我们不能编写System.setProperty 在
我正在尝试实现一个域类,用于记录任何属性值何时更改,但我的 setProperty() 调用会在设置实际值时导致无限递归。 这就是现在的样子: void setProperty(String name
为什么我需要使用 setProperty 才能设置 java 类中变量的值 当我可以创建变量的实例并使用该实例来访问我的变量并分配值时。 最佳答案 您指的是Encapsulation 。它是面向对象编
这个问题已经有答案了: How to set request.getParameter in jsp:setProperty (1 个回答) 已关闭 3 年前。 所以基本上我想弄清楚是否可以将 jsp
编辑:代码已更新以包含 @Igor Artamonov 建议的更改,但问题仍然出现!我确实注意到了以下内容 reference to this image ,所有者 2 有高度值,没有 tool_pr
我使用它来验证 HTTP URL 以获取 JSON 字符串 HttpURLConnection inputStream = (HttpURLConnection) myURL.open
我正在开发一个基于 BindableBase 的 ViewModel。此 VM 包含域模型的实例。VM 公开了一个属性,比如 Name 我不想从中使用本地存储(即 VM 中的存储),而是委托(dele
我想将资源文件夹中的文件路径设置为系统属性。 String path = MainCore.class.getClassLoader().getResource("chromedriver-76.0.
为什么 configFile.setProperty("dir", "test") 在 ActionListener 的方法 actionPerformed 中不起作用。它不会将属性放入文件中。 se
当我尝试为我的 XmlSerializer 设置属性时,例如 xmlSerializer.setProperty("http://xmlpull.org/v1/doc/properties.html#
我正在尝试将 QVariantMap 转换为派生自 QObject 的自定义类,但我得到的返回值是 false setProperty()当谈到设置我的枚举类型的属性时。代码如下: MessageHe
我有一个程序,需要在其中设置记录器格式,但由于有多个入口点(我无法控制所有入口点),我想将 System.setProperty() 调用放置在所有入口点汇聚的类的构造函数中。 主类 public s
我是一名优秀的程序员,十分优秀!