如果 oracle.exe 正在运行,则 Glassfish 服务器会出错并且不会启动。
我曾尝试更改 Glassfish 服务器的端口号,但这无济于事。
我想在需要 Glassfish 服务器的 Java Web 应用程序中使用 Oracle 10g 数据库,因此我将不胜感激任何解决方案。
如果 oracle.exe 正在运行,则 Glassfish 服务器会出错并且不会启动。
我曾尝试更改 Glassfish 服务器的端口号,但这无济于事。
我想在需要 Glassfish 服务器的 Java Web 应用程序中使用 Oracle 10g 数据库,因此我将不胜感激任何解决方案。
Oracle XE 的 XML DB (XDB) 的嵌入式 HTTP 侦听器可能与 Glassfish 的 HTTP 端口发生冲突。
您需要更改默认端口 8080 以避免冲突。
更改 Oracle XE 的 HTTP 侦听器端口
这记录在Oracle XE 文档中。必须执行以下步骤:
SQLPLUS /NOLOG
(在不登录的情况下启动 SQLPlus)CONNECT SYSTEM/password
(以 SYSTEM 身份连接;您需要提供适当的密码)EXEC DBMS_XDB.SETHTTPPORT(nnnn);
(将新端口值替换为nnnn)。更改 Glassfish 实例的 HTTP 侦听器端口
这假设 Glassfish 3.1。您可以使用asadmin执行此操作,通过类似于 asadmin 中的以下命令:
set server.http-service.http-listener.http-listener-1.port=nnnn
您需要替换新的端口号。
您还可以在 Glassfish 域配置文件中修改端口值的值$GLASSFISH_INSTALL/glassfish/domains/domain1/config/domain.xml
。您需要编辑“http-listener-1”的条目并将端口从 8080 更改为另一个值:
<network-listeners>
<network-listener port="8080" protocol="http-listener-1" transport="tcp" name="http-listener-1" thread-pool="http-thread-pool"></network-listener>
<network-listener port="8181" protocol="http-listener-2" transport="tcp" name="http-listener-2" thread-pool="http-thread-pool"></network-listener>
<network-listener port="4848" protocol="admin-listener" transport="tcp" name="admin-listener" thread-pool="admin-thread-pool"></network-listener>
</network-listeners>