4 Replies Latest reply on Jun 10, 2011 6:54 AM by chuy

    Defects in CustomWebPublishingConfigAdapter can cause WPE to stop working with error code 2504 or...

    MikeyH

      Summary

      Defects in CustomWebPublishingConfigAdapter can cause WPE to stop working with error code 2504 or fail to start

      Product

      FileMaker Server

      Version

      11.0.3.309

      Operating system version

      MacOS 10.6.7

      Description of the issue

      In certain WPE configurations where XSLT Publishing or logging are changed the web publishing engine will fail to start or stop working with the following exception...

      [FMICustomWebPublishingConfigAdapter] - Allocate exception for servlet FMICustomWebPublishingConfigAdapter
      java.lang.NullPointerException
           at com.fmi.config.CustomWebPublishingConfigAdapter.init(Unknown Source)
           at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
           at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:791)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:127)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
           at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:276)
           at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:81)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
           at com.filemaker.tomcat.FMErrorReportValve.invoke(Unknown Source)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
           at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
           at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
           at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
           at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
           at java.lang.Thread.run(Thread.java:680)


      This issue is related to the loading of xslt_cwp_log.properties in FMICustomWebPublishingConfigAdapter.init(ServletConfig) found in cwpe-config.jar

      In certain configurations the xslt_cwp_log.properties file has no entries for log4j.category.xslt_cwp.user and log4j.category.xslt_cwp

      The getProperty("log4j.category.xslt_cwp.user"); and getProperty("log4j.category.xslt_cwp"); will return null and the code property.substring(0, property.indexOf(',')) will cause a NullPointerException.

      Manual fixes to this class resolve this issue.

      Steps to reproduce the problem

      Some combination of WPE deployment with XSTL Publishing disabled and/or changes to the WPE Configuration result in an empty xslt_cwp_log.properties file.

      Expected result

      WPE works :-)

      Actual result

      WPE fails with java.lang.NullPointerException in FMICustomWebPublishingConfigAdapter

      Exact text of any error message(s) that appear

      [FMICustomWebPublishingConfigAdapter] - Allocate exception for servlet FMICustomWebPublishingConfigAdapter
      java.lang.NullPointerException
           at com.fmi.config.CustomWebPublishingConfigAdapter.init(Unknown Source)
           at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1139)
           at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:791)
           at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:127)
           at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
           at org.apache.catalina.valves.RequestFilterValve.process(RequestFilterValve.java:276)
           at org.apache.catalina.valves.RemoteAddrValve.invoke(RemoteAddrValve.java:81)
           at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
           at com.filemaker.tomcat.FMErrorReportValve.invoke(Unknown Source)
           at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
           at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
           at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
           at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
           at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
           at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
           at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
           at java.lang.Thread.run(Thread.java:680)

      Workaround

      Reinstall :-(

      Filemaker_WPE_2504_Error.jpg

        • 1. Re: Defects in CustomWebPublishingConfigAdapter can cause WPE to stop working with error code 2504 or...

          MikeyH:

          Thanks for posting!

          I think we might need a bit more information. What configuration were you using when you ran into this issue (e.g., single machine, two machine, etc.)?

          Were you upgrading from a previous version of FileMaker Server when this occurred?

          Is this something you've been able to consistently reproduce?

          TSBear

          FileMaker, Inc.

          • 2. Re: Defects in CustomWebPublishingConfigAdapter can cause WPE to stop working with error code 2504 or...
            MikeyH

            Hi TSBear,

            The null log4j.category.xslt_cwp.user and log4j.category.xslt_cwp properties in xslt_cwp_log.properties file have occured twice in the last 2 weeks with configuration changes to XSLT publishing on a standard trial install.

            Each install started with a standard single machine deployment of Filemaker Server 11 Advanced Trial with all options enabled on the latest MacOS 10.6.7 using Java SE 6 1.6.0_24-b07-334 and a standard Apache install.

            Both installs were based on fms_trial_11.0.2.217.dmg using FMS11.0v2Java6Update24HotFix.zip and the current install was updated with fms_11v3_mac_updater.dmg to test regression.

            The systems were working fine until XSLT Publishing settings were changed and the system redeployed. After that WPE would stop working.

            I don't have a specific series of steps at this time which create an empty xslt_cwp_log.properties file. It is some combination of changing the XSLT publishing settings and redeploying.

            The decrypted contents of my current automatically generated xslt_cwp_log.properties file are:

            #XSLT-CWP Log Properties

            #Fri Apr 29 09:12:07 NZST 2011

            Since it happened twice with the exact same error on a standard install it was worth investigating the cause of the NullPointerException in the FMICustomWebPublishingConfigAdapter servlet init method.

            In any case there are defects in the com.fmi.config.FMICustomWebPublishingConfigAdapter.init(ServletConfig) code which need to be fixed by Filemaker with better code to handle null log4j.category.xslt_cwp.user and log4j.category.xslt_cwp properties in the xslt_cwp_log.properties file.

            This code will always fail on a null property:

            String s = properties.getProperty("log4j.category.xslt_cwp.user");

            String  = s.substring(0, s.indexOf(','));

            Please review and fix this code :-)

            Regards,

            Mike

            • 3. Re: Defects in CustomWebPublishingConfigAdapter can cause WPE to stop working with error code 2504 or...

              MikeyH:

              Thank you for providing that additonal information. I haven't been able to reproduce this issue but I went ahead and forwarded your post to our Quality Assurance and Development departments for further review. I will reply to this thread with new information as I receive it.

              TSBear

              FileMaker, Inc.

              • 4. Re: Defects in CustomWebPublishingConfigAdapter can cause WPE to stop working with error code 2504 or...
                chuy

                I have latest FMSA 11.0.3.309, and macOS X server 10.6.7, had been operation form months, and this issue started to happen yesterday, I know last update to server was the security updates, but a few days ago.

                I reinstall the server and works for a while, but then it just stops responding, FM Pro users are unaffected.

                If I restart the server, it works for several minutes to half an hour, and stops

                When I reinstalled i did the following

                1)backcup Data folder

                2)execute remove FM form installer

                3)Delete library/fm folder

                4)install FMA form installer, since it is the 11.0 (that cant launch FMadmin console), it fails before entering

                5)Install latest Upgrade, enter the console by IP xxxx:160000, and configure

                6)I have a local IP number (intranet) a certificate (locally generated) and has worked since december

                my solution uses FM Pro on some users, IWP on all others, ODBC for some reports.

                on the wizard it allways fails on forst try, then I cinfigure port for https, and select HTTPS on the radio button, passes the test, and finihses OK

                7) The DBases are loaded trough the console, to by drag and drop to fm folder

                ALSO MY CUP USAGE FOR FM Web Publishing tread takes 95 to 100% CPU

                and get by email the following:

                ----------------------------------

                Some problems were detected in the WPE COMPONENT: COMPONENT IS NOT RESPONDING.

                Contact information not specified.