2014-08-27 11 views
6

मेरे पास दो सर्वर हैं - एक उत्पादन और एक विकास - विंडोज सर्वर 2008 आर 2 पर आईआईएस 7.5 पर कोल्डफ्यूजन 9.0.1 चल रहा है। दोनों समान रूप से कॉन्फ़िगर किए गए हैं। हमारे पास एक क्षणिक मुद्दा है, जहां हफ्तों से लेकर अनजान अपटाइम के महीनों के बाद, साइट के कुछ हिस्सों (विशेष रूप से सीएफआईडी प्रशासक पोर्टल और सीएफविंडो टैग वाला कोई भी पृष्ठ) फेंकना शुरू कर देगा "कक्षा में coldfusion.security.ESAPIUtils" त्रुटियों को प्रारंभ नहीं कर सका लॉग।"ESAPI.properties किसी भी माध्यम से लोड नहीं किया जा सका। असफल।" कारण "क्लास coldfusion.security.ESAPIUtils प्रारंभ नहीं कर सका"

पर somerecommendations आधार पर मैंने अनइंस्टॉल और महीने पहले गर्म फिक्स के सभी पुनर्स्थापित, पचगुना जांच करते हुए कि मैं उन्हें सही क्रम में लागू करने और निर्देश के उपयुक्त सेट पीछा कर रहा था।

इससे चीजों को ठीक नहीं किया गया, लेकिन जैसा कि मैं लॉग फ़ाइलों के माध्यम से मिल रहा था, मैंने देखा कि एक और ईएसएपीआई-संबंधित त्रुटि ("ESAPI.properties किसी भी माध्यम से लोड नहीं हो सका। असफल।") लॉग में बाद में दिखाई देता है एक jRun पुनरारंभ करें। मैं करने के लिए following declaration जोड़ने की कोशिश की jvm.config में java.args:

-Dorg.owasp.esapi.resources=E:\JRun4\servers\cfusion\cfusion-ear\cfusion-war\WEB-INF\cfusion\lib 

कि कई महीनों के लिए इस मुद्दे को ठीक करने के लिए लग रहा था; कोई गलती नहीं, चीजें ठीक काम करती थीं। फिर, कल उत्पादन सर्वर ने त्रुटियों को फिर से फेंकना शुरू कर दिया। मैंने JRun को पुनरारंभ करने और सर्वर को रीबूट करने का प्रयास किया है और त्रुटि बनी हुई है। विकास सर्वर पूरी तरह से ठीक है।

मैंने एक ऐसी स्क्रिप्ट बनाने की कोशिश की जो बस एक ESAPIUtil उदाहरण को तत्काल और cfdumps करता है। देव पर, यह वस्तु के बारे में मेटाडेटा को डंप करता है; उत्पादन पर, पृष्ठ में एक त्रुटि होती है।

मैं इस मुद्दे के साथ और लगभग एक साल तक लड़ रहा हूं। कभी-कभी यह कई दिनों के बाद खुद को हल करता है, कभी-कभी यह सप्ताहों तक जारी रहता है। मुझे अभी तक इस स्थिति को "प्रेरित करने" का कोई तरीका पता नहीं है, इसलिए हम अवांछित "फिक्स" के साथ फंस गए हैं जो थोड़ी देर के लिए काम करते हैं, तो नहीं।

यह पूरी तरह से स्पर्शपूर्ण लगता है, लेकिन हमारे पास ऐसे उदाहरण हैं जहां अंतर्निहित IsImageFile() फ़ंक्शन मान्य छवियों के लिए झूठा रिटर्न देता है। IsImageFile() अजीबता "क्लास coldfusion.security.ESAPIUtils प्रारंभ नहीं कर सका" पागलपन शुरू होने से पहले थोड़ा सा शुरू होता है।

ColdFusion Version: 9,0,1,274733 
Operating System: Windows Server 2008 R2 amd64 6.1 
Web Server Software: Microsoft-IIS/7.5 
Java JVM: 1.8.0_05 Oracle Corporation 
JEE Server: JRun/4.0 
Security Hotfixes (9.0.1): APSB13-27, APSB13-19, APSB13-13, APSB13-10, ColdFusion 9.0.1  Cumulative Hotfix 4 (APSB13-03, APSB12-26, APSB12-21, APSB12-06, APSB11-29, APSB11-14, APSB11-04, APSB10-18), ColdFusion 9.0.1 Cumulative Hotfix 3, ColdFusion 9.0.1 Cumulative Hotfix 2, ColdFusion 9.0.1 Cumulative Hotfix 1 
Connectors: JRun IIS 64 Bit Connector (Build 108858) 

और cfusion-out.log से एक स्टैक ट्रेस: ​​

08/27 11:37:52 Error [jrpp-58] - Could not initialize class  08/27 11:37:52 Error [jrpp-58] - Could not initialize class coldfusion.security.ESAPIUtils The specific sequence of files included or processed is: E:\web\cfadmin\webroot\CFIDE\administrator\index.cfm, line: 30 
08/27 11:37:52 error ROOT CAUSE: 
java.lang.NoClassDefFoundError: Could not initialize class coldfusion.security.ESAPIUtils 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:483) 
at coldfusion.runtime.java.JavaProxy.invoke(JavaProxy.java:97) 
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360) 
at cflogin2ecfm1599616868.runPage(C:\work\ColdFusion\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\login.cfm:30) 
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231) 
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416) 
at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2722) 
at cfApplication2ecfm1920815415._factor5(C:\work\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\Application.cfm:210) 
at cfApplication2ecfm1920815415._factor9(C:\work\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\Application.cfm:202) 
at cfApplication2ecfm1920815415.runPage(C:\work\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\Application.cfm:1) 
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231) 
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416) 
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65) 
at coldfusion.filter.CfincludeFilter.include(CfincludeFilter.java:33) 
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:297) 
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48) 
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) 
at coldfusion.filter.PathFilter.invoke(PathFilter.java:94) 
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) 
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28) 
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) 
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) 
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) 
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) 
at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62) 
at coldfusion.CfmServlet.service(CfmServlet.java:201) 
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) 
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86) 
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42) 
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46) 
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) 
at jrun.servlet.FilterChain.service(FilterChain.java:101) 
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106) 
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) 
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286) 
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543) 
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203) 
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428) 
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66) 
javax.servlet.ServletException: ROOT CAUSE: 
java.lang.NoClassDefFoundError: Could not initialize class coldfusion.security.ESAPIUtils 
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
at java.lang.reflect.Method.invoke(Method.java:483) 
at coldfusion.runtime.java.JavaProxy.invoke(JavaProxy.java:97) 
at coldfusion.runtime.CfJspPage._invoke(CfJspPage.java:2360) 
at cflogin2ecfm1599616868.runPage(C:\work\ColdFusion\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\login.cfm:30) 
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231) 
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416) 
at coldfusion.runtime.CfJspPage._emptyTcfTag(CfJspPage.java:2722) 
at cfApplication2ecfm1920815415._factor5(C:\work\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\Application.cfm:210) 
at cfApplication2ecfm1920815415._factor9(C:\work\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\Application.cfm:202) 
at cfApplication2ecfm1920815415.runPage(C:\work\cf9_u1_final_hotfix\cfusion\wwwroot\CFIDE\administrator\Application.cfm:1) 
at coldfusion.runtime.CfJspPage.invoke(CfJspPage.java:231) 
at coldfusion.tagext.lang.IncludeTag.doStartTag(IncludeTag.java:416) 
at coldfusion.filter.CfincludeFilter.invoke(CfincludeFilter.java:65) 
at coldfusion.filter.CfincludeFilter.include(CfincludeFilter.java:33) 
at coldfusion.filter.ApplicationFilter.invoke(ApplicationFilter.java:297) 
at coldfusion.filter.RequestMonitorFilter.invoke(RequestMonitorFilter.java:48) 
at coldfusion.filter.MonitoringFilter.invoke(MonitoringFilter.java:40) 
at coldfusion.filter.PathFilter.invoke(PathFilter.java:94) 
at coldfusion.filter.ExceptionFilter.invoke(ExceptionFilter.java:70) 
at coldfusion.filter.ClientScopePersistenceFilter.invoke(ClientScopePersistenceFilter.java:28) 
at coldfusion.filter.BrowserFilter.invoke(BrowserFilter.java:38) 
at coldfusion.filter.NoCacheFilter.invoke(NoCacheFilter.java:46) 
at coldfusion.filter.GlobalsFilter.invoke(GlobalsFilter.java:38) 
at coldfusion.filter.DatasourceFilter.invoke(DatasourceFilter.java:22) 
at coldfusion.filter.CachingFilter.invoke(CachingFilter.java:62) 
at coldfusion.CfmServlet.service(CfmServlet.java:201) 
at coldfusion.bootstrap.BootstrapServlet.service(BootstrapServlet.java:89) 
at jrun.servlet.FilterChain.doFilter(FilterChain.java:86) 
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:42) 
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46) 
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) 
at jrun.servlet.FilterChain.service(FilterChain.java:101) 
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106) 
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) 
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286) 
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543) 
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203) 
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428) 
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66) 
at coldfusion.monitor.event.MonitoringServletFilter.doFilter(MonitoringServletFilter.java:70) 
at coldfusion.bootstrap.BootstrapFilter.doFilter(BootstrapFilter.java:46) 
at jrun.servlet.FilterChain.doFilter(FilterChain.java:94) 
at jrun.servlet.FilterChain.service(FilterChain.java:101) 
at jrun.servlet.ServletInvoker.invoke(ServletInvoker.java:106) 
at jrun.servlet.JRunInvokerChain.invokeNext(JRunInvokerChain.java:42) 
at jrun.servlet.JRunRequestDispatcher.invoke(JRunRequestDispatcher.java:286) 
at jrun.servlet.ServletEngineService.dispatch(ServletEngineService.java:543) 
at jrun.servlet.jrpp.JRunProxyService.invokeRunnable(JRunProxyService.java:203) 
at jrunx.scheduler.ThreadPool$ThreadThrottle.invokeRunnable(ThreadPool.java:428) 
at jrunx.scheduler.WorkerThread.run(WorkerThread.java:66) 
+0

इस सर्वर पर sandbox सक्षम है? –

+0

हां। क्षमा करें मैं मूल रूप से शामिल करना भूल गया था। त्रुटि उत्पादन सर्वर पर कई सैंडबॉक्स में होती है। (यह कई आईआईएस अनुप्रयोग पूल में भी होता है।) – Rob

+1

क्या आपने उन sandboxes के लिए esapi.properties फ़ाइल पढ़ने के लिए अनुमति जोड़ने की कोशिश की है? –

उत्तर

1

एक फ़ाइल esapi.properties करने की अनुमति \ lib निर्देशिका < CF_HOME> में मौजूद फाइल को पढ़ने के जोड़े

नीचे सर्वर संस्करण हैं प्रत्येक सैंडबॉक्स के लिए। यदि आप सीएफ एडमिन कंसोल तक नहीं पहुंच पा रहे हैं तो मैन्युअल रूप से इस अनुमति को neo-security.xml में जोड़ें जो < CF_HOME> \ lib निर्देशिका में पाया जा सकता है।

संबंधित मुद्दे