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)

相关推荐
Tel199253080041 小时前
温度湿度信号转WiFi/MQTT/Modbus TCP采集模块 无线传输
网络·网络协议·tcp/ip·工业自动化·工控设备
lazy H4 小时前
【计算机网络】第 13 篇:NAT 和端口映射是什么?为什么本地服务外网访问不了?
java·网络·网络协议·学习·计算机网络·408
低慢小uav5 小时前
(已解决)Zynq芯片lwip协议栈,使用tcp作为服务器Service,接收大量数据时,长度接收正常,接收对数据校验,校验和异常分析
网络协议·tcp/ip·fpga开发
骑着蜗牛撵大象3277 小时前
手写一个 HTTP 服务器:从 socket 到 epoll,Linux 上到底怎么把请求变成响应
linux·服务器·网络·http·epoll·socket编程·并发模型
梅如你7 小时前
ISPRS | 1990-2020年间中国人工林与天然林的空间分布数据
arcgis·gis·遥感
沫璃染墨8 小时前
从零入门计算机网络系列(十):HTTP协议进阶——从资源路径解析到状态码与请求头详解
linux·运维·服务器·网络·c++·http
|_⊙9 小时前
应用层协议HTTP与HTTPS
网络·网络协议·http
byte轻骑兵10 小时前
【PBAP】规范精讲[9]: 蓝牙PBAP的互联互通法则——GOEP互操作性要求深度解析
网络协议·人机交互·蓝牙协议·pbap
路由侠内网穿透.10 小时前
本地部署开源 WSGI HTTP 服务器 Gunicorn 并实现外部访问
运维·服务器·网络·网络协议·http·开源
箓维10 小时前
TCP Socket的基础实现
网络·网络协议·tcp/ip