ArcGIS Manager Server Add Host页面报错 HTTP Status 500

ArcGIS Manager Server Add Host页面报错 HTTP Status 500

问题描述

由于系统老旧,难免遇到一些诡异的 Bug,在维护使用旧版本的 ArcGIS 10.0,打开登录 ArcGIS Manager Server后,进入服务管理页面时提示"Add Host",进入 Host Machine 管理页面直接报错 HTTP Status 500,我的报错信息如下:HTTP Status 500 - javax.faces.component.UIViewRoot cannt be cast to com.sun.faces.application.StateManagerImpl$TreeNode。

解决问题

  1. 找到日志文件 \ArcGIS\Server10.0\java\manager\service\logs\manager_stderr2.txt
  2. 查看提示"HTTP Status 500"时间段的错误信息
  3. 定位到对应页面行数,修改问题
  4. 可能是ArcGIS证书过期导致提示"Add Host",哪怕我修复这个问题后,保存 Host 还是会提示证书过期,无法添加 Host,更改证书为有效后,ArcGIS 恢复正常
  5. 因为版本过低,导致页面提示信息很有限,只报错最后一段,压根没法对报错信息溯源,所以找到日志文件的报错信息这一步很重要
  6. 旧版本 ArcGIS 可以修改服务器/电脑系统日期让证书重新生效,需要重启服务器/电脑!

因为页面报错的信息实在有限,根本想不到他在哪儿报错,只能找到对应的报错文件,对应的问题行数去解决,大家遇到的问题可能不一样,提出这个思路可以少走很多弯路。

我这次报错的页面:

复制代码
\ArcGIS\Server10.0\java\manager\service\managerserver\webapps\arcgismanager\gisServer\gisServerAdd.xhtml

报错代码:

Java 复制代码
<td>
          <h:inputText id="inputCapacitySOCTxt" value="#{esriAGSServerAdd.capacity}" styleClass="long" disabled="#{esriAGSServerAdd.capacity == 'Unlimited'}"/>
</td>

修改代码:

Java 复制代码
<td>
          <h:inputText id="inputCapacitySOCTxt" value="#{esriAGSServerAdd.capacity}" styleClass="long" disabled="true"/>
</td>

附上报错信息、截图

java 复制代码
2024-12-10 11:28:25 com.sun.facelets.FaceletViewHandler handleRenderException
严重: Error Rendering View[/gisServer/gisServerAdd.xhtml]
javax.faces.FacesException: javax.el.ELException: /gisServer/gisServerAdd.xhtml @86,160 disabled="#{esriAGSServerAdd.capacity == 'Unlimited'}": Cannot convert Unlimited of type class java.lang.String to class java.lang.Long
	at javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:1593)
	at com.sun.faces.renderkit.RenderKitUtils.renderXHTMLStyleBooleanAttributes(RenderKitUtils.java:439)
	at com.sun.faces.renderkit.html_basic.TextRenderer.getEndTextToRender(TextRenderer.java:128)
	at com.sun.faces.renderkit.html_basic.HtmlBasicRenderer.encodeEnd(HtmlBasicRenderer.java:160)
	at javax.faces.component.UIComponentBase.encodeEnd(UIComponentBase.java:861)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:937)
	at javax.faces.render.Renderer.encodeChildren(Renderer.java:148)
	at javax.faces.component.UIComponentBase.encodeChildren(UIComponentBase.java:837)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:930)
	at javax.faces.component.UIComponent.encodeAll(UIComponent.java:933)
	at com.sun.facelets.FaceletViewHandler.renderView(FaceletViewHandler.java:592)
	at com.sun.faces.lifecycle.RenderResponsePhase.execute(RenderResponsePhase.java:110)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
	at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:139)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:266)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.myfaces.webapp.filter.ExtensionsFilter.doFilter(ExtensionsFilter.java:301)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at com.esri.arcgis.manager.web.util.FileUploadFilter.doFilter(Unknown Source)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at com.esri.arcgis.manager.web.util.GZipFilter.doFilter(Unknown Source)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at com.esri.arcgis.manager.web.util.ManagerWebFilter.doFilter(Unknown Source)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:612)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:503)
	at java.lang.Thread.run(Thread.java:619)
Caused by: javax.el.ELException: /gisServer/gisServerAdd.xhtml @86,160 disabled="#{esriAGSServerAdd.capacity == 'Unlimited'}": Cannot convert Unlimited of type class java.lang.String to class java.lang.Long
	at com.sun.facelets.el.TagValueExpression.getValue(TagValueExpression.java:76)
	at javax.faces.component.html.HtmlInputText.isDisabled(HtmlInputText.java:202)
	at sun.reflect.GeneratedMethodAccessor484.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at javax.faces.component.UIComponentBase$AttributesMap.get(UIComponentBase.java:1585)
	... 38 more
2024-12-10 11:28:25 com.sun.faces.lifecycle.Phase doPhase
严重: JSF1054: (Phase ID: RENDER_RESPONSE 6, View ID: /gisServer/gisServerAdd.xhtml) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@149d0a1]
2024-12-10 11:28:25 com.sun.faces.lifecycle.Phase doPhase
严重: JSF1054: (Phase ID: RESTORE_VIEW 1, View ID: ) Exception thrown during phase execution: javax.faces.event.PhaseEvent[source=com.sun.faces.lifecycle.LifecycleImpl@149d0a1]
2024-12-10 11:28:25 org.apache.catalina.core.ApplicationDispatcher invoke
严重: Servlet.service() for servlet Faces Servlet threw exception
java.lang.ClassCastException: javax.faces.component.UIViewRoot cannot be cast to com.sun.faces.application.StateManagerImpl$TreeNode
	at com.sun.faces.application.StateManagerImpl.restoreTree(StateManagerImpl.java:723)
	at com.sun.faces.application.StateManagerImpl.restoreTree(StateManagerImpl.java:665)
	at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:131)
	at com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:311)
	at com.sun.facelets.FaceletViewHandler.restoreView(FaceletViewHandler.java:316)
	at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:175)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
	at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:103)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at com.esri.arcgis.manager.web.util.ManagerWebFilter.doFilter(Unknown Source)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:612)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:503)
	at java.lang.Thread.run(Thread.java:619)
2024-12-10 11:28:25 org.apache.catalina.core.StandardWrapperValve invoke
严重: Servlet.service() for servlet Faces Servlet threw exception
java.lang.ClassCastException: javax.faces.component.UIViewRoot cannot be cast to com.sun.faces.application.StateManagerImpl$TreeNode
	at com.sun.faces.application.StateManagerImpl.restoreTree(StateManagerImpl.java:723)
	at com.sun.faces.application.StateManagerImpl.restoreTree(StateManagerImpl.java:665)
	at com.sun.faces.application.StateManagerImpl.restoreView(StateManagerImpl.java:131)
	at com.sun.faces.application.ViewHandlerImpl.restoreView(ViewHandlerImpl.java:311)
	at com.sun.facelets.FaceletViewHandler.restoreView(FaceletViewHandler.java:316)
	at com.sun.faces.lifecycle.RestoreViewPhase.execute(RestoreViewPhase.java:175)
	at com.sun.faces.lifecycle.Phase.doPhase(Phase.java:100)
	at com.sun.faces.lifecycle.RestoreViewPhase.doPhase(RestoreViewPhase.java:103)
	at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:118)
	at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:646)
	at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:436)
	at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:374)
	at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:302)
	at com.esri.arcgis.manager.web.util.ManagerWebFilter.doFilter(Unknown Source)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:293)
	at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:861)
	at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:612)
	at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:503)
	at java.lang.Thread.run(Thread.java:619)

相关推荐
laoli_coding14 小时前
如何配置HTTPS站点访问的免费SSL域名证书
网络协议·https·node.js·ssl
Keepingrun1 天前
HTTP基础
网络·网络协议·http
数据知道1 天前
HTTP/HTTPS 安全深度剖析:抓包、解密与证书陷阱
安全·http·https·mitmproxy·抓包解密
apihz1 天前
全球域名 WHOIS 信息实时查询免费 API 接口教程,支持1000+后缀
android·网络·网络协议·tcp/ip·apache·域名·whois
এ慕ོ冬℘゜1 天前
前端核心知识体系进阶:从安全机制、网络协议到原生 JS 实战全解析
前端·网络协议·安全
ZPC82101 天前
model bingxing
网络·人工智能·网络协议·机器人
Ai拆代码的曹操1 天前
TCP 握手丢包分析:客户端连接超时、服务端无日志的场景排查实践
网络·网络协议·tcp/ip
玖玥拾2 天前
C# 语言进阶(十三)网络 DLL 库分层设计
服务器·开发语言·网络·网络协议·c#
大师兄66682 天前
HarmonyOS7 HTTP 网络请求封装:统一拦截器实战
网络·网络协议·http·arkui·harmonyos7·实战讲解
韩曙亮2 天前
【Flutter】iOS 网络权限设置 ② ( 配置 iOS 平台可使用 HTTP 访问 | ATS 网络安全强制规范 )
网络·flutter·http·ios·https·网络权限·ats