weblogic无法启动:地址已在使用中错误

时间:2018-09-07 13:44:18

标签: eclipse weblogic

我创建了一个测试应用程序,以开始使用Eclipse学习weblogic。 昨天,当我在服务器上运行时,jsp页面运行良好,我得到了我创建的基本页面。 但是今天我收到一条错误消息:

  

本机方法中的致命错误:JDWP没有初始化传输,jvmtiError = AGENT_ERROR_TRANSPORT_INIT(197)   错误:传输错误202:绑定失败:地址已在使用中   错误:JDWP传输dt_socket初始化失败,TRANSPORT_INIT(510)   JDWP退出错误AGENT_ERROR_TRANSPORT_INIT(197):没有初始化传输的[../../../ src / share / back / debugInit.c:750]

在浏览器中,我得到了:

  

错误404-找不到   从RFC 2068超文本传输​​协议-HTTP / 1.1:   10.4.5找不到404   服务器未找到与请求URI匹配的任何内容。没有迹象表明这种情况是暂时的还是永久的。

还有一次我是在控制台上得到的:

  

weblogic.application.ModuleException:空   空值       在weblogic.servlet.internal.WebAppModule.createModuleException(WebAppModule.java:1824)       在weblogic.servlet.internal.WebAppModule.init(WebAppModule.java:270)       在weblogic.servlet.internal.WebAppModule.init(WebAppModule.java:682)       在weblogic.application.internal.flow.ScopedModuleDriver.init(ScopedModuleDriver.java:162)       在weblogic.application.internal.ExtensibleModuleWrapper.init(ExtensibleModuleWrapper.java:98)       被截断了。请参阅日志文件以获取完整的stacktrace

您能告诉我我错过了什么,当我启动服务器时它的状态为start。谢谢,我可以添加任何信息。

1 个答案:

答案 0 :(得分:0)

最可能的原因是服务器在调试模式下运行,并且与同一台机器上的现有服务器具有相同的调试端口。

如果您为在同一台机器上以开发模式运行的每个域配置了多个域,请确保 setDomainEnv 脚本中的 DEBUG_PORT 具有不同的值。

如果您在同一域和同一台机器上有多个托管服务器,请创建一个单独的 startManagedWeblogic 脚本来启动您的托管服务器并在该脚本中设置调试端口。

如果您使用节点管理器来启动您的托管服务器,请确保您在 nodemanager.properties 文件中设置了以下几行,否则将不会执行 etDomainEnv.sh:

StartScriptEnabled=true
StopScriptEnabled=true

这样,如果您通过管理控制台启动托管服务器,setDomainEnv.sh 将被调用。

然后,您可以修改WebLogic域脚本setDomainEnv.sh,根据需要启动的服务器名称设置合适的DEBUG_PORT值:

使用您喜欢的编辑器更改 setDomainEnv.sh 文件

您应该已经找到以下几行:

if [ "${SERVER_NAME}" = "" ] ; then
    SERVER_NAME="AdminServer"
    export SERVER_NAME
fi

同样的方法,你可以添加:

if [ "${SERVER_NAME}" = "ManagedServer1" ] ; then
   DEBUG_PORT="8454"
   export DEBUG_PORT
fi   

if [ "${SERVER_NAME}" = "ManagedServer2" ] ; then
   DEBUG_PORT="8455"
   export DEBUG_PORT
fi