当我进入Oracle Application Server控制面板时,出现了一条错误消息"从OPMN响应"收到的字节数(-1)太少。它不允许进行任何部署。我该如何解决这个错误?
跟踪信息:
oracle.ias.opmn.optic.OpticBadConnectException: Too few bytes (-1) received from OPMN response at
oracle.ias.opmn.optic.OpmnPhone.rcvResponse(OpmnPhone.java:529) at
oracle.ias.opmn.optic.OpmnPhone.makePhoneCall(OpmnPhone.java:193) at
oracle.ias.opmn.optic.OpmnPhone.request(OpmnPhone.java:130) at
oracle.ias.opmn.optic.OpmnQuery.getBuf(OpmnQuery.java:347) at
oracle.ias.opmn.optic.OpmnQuery.getDom(OpmnQuery.java:467) at
oracle.ias.opmn.optic.OpmnQuery.getIasCluster(OpmnQuery.java:941) at
oracle.sysman.ias.studio.cluster.OpticTopologyAdminBean.initializeAppServers(OpticTopologyAdminBean.java:1117) at
oracle.sysman.ias.studio.cluster.TopologyHelper.prepareData(TopologyHelper.java:1278) at
oracle.sysman.ias.studio.sdk.AbstractController.prepareData(AbstractController.java:875) at
oracle.sysman.emSDK.svlt.PageHandler.handleRequest(PageHandler.java:391) at
oracle.sysman.emSDK.svlt.EMServlet.myDoGet(EMServlet.java:765) at
oracle.sysman.emSDK.svlt.EMServlet.doGet(EMServlet.java:283) at
oracle.sysman.ias.studio.app.StudioConsole.doGet(StudioConsole.java:297) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:743) at
javax.servlet.http.HttpServlet.service(HttpServlet.java:856) at
com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:64) at
oracle.sysman.ias.studio.app.BrowserVersionFilter.doFilter(BrowserVersionFilter.java:75) at
com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:15) at
oracle.sysman.ias.studio.app.MultipleJVMFilter.doFilter(MultipleJVMFilter.java:85) at
com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17) at
oracle.sysman.ias.studio.app.PostLogonFilter.doFilter(PostLogonFilter.java:80) at
com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:17) at
oracle.sysman.ias.studio.app.ShortHostnameRedirectFilter.doFilter(ShortHostnameRedirectFilter.java:68) at
com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:619) at
com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:368) at
com.evermind.server.http.HttpRequestHandler.doProcessRequest(HttpRequestHandler.java:866) at
com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:448) at
com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:302) at
com.evermind.server.http.AJPRequestHandler.run(AJPRequestHandler.java:190) at
oracle.oc4j.network.ServerSocketReadHandler$SafeRunnable.run(ServerSocketReadHandler.java:260) at
com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:303) at
java.lang.Thread.run(Thread.java:595)
opmn.log文件中的错误日志:
. . . 16/02/03 10:14:29 [ons-connect] Local connection 127.0.0.1,6100 invalid form factor 16/02/03 10:16:29 [ons-connect] Local connection 127.0.0.1,6100 invalid form factor 16/02/03 10:18:42 [ons-connect] Local connection 127.0.0.1,6100 invalid form factor 16/02/03 10:19:29 [ons-connect] Local connection 127.0.0.1,6100 invalid form factor . .
答案 0 :(得分:0)
经过漫长的搜索过程后,我发现我的错误与oracle服务器上的所有者权限有关。 oracle用户管理实例,因此oracle /文件夹下的文件必须具有oracle所有者权限。如果您使用root或其他用户输入并通过运行或重写它们来更改某些文件权限,尤其是j2ee / home / persistence下的配置文件,opmn / conf,opmn / bin,oracle用户无法执行该文件。我用oracle用户设置文件所有者权限并重启服务器,错误消失了。