resinquercus

Resin: when enabling unicode.semantics


I'm having a problem migrating an application from Resin 4.0.6 to 4.0.38

The error I get is /Users/.../general_urls.php:9: Fatal Error: 'get_servlet_context_path' is an unknown function. Where get_servlet_context_path is a function in a servlet extending AbstractQuercusModule. The intriguing thing is that this seems to be related to utf encoding. In resin-web.xml I have:

<web-app xmlns="http://caucho.com/ns/resin">
        <servlet-mapping url-pattern="*.php"
                servlet-class="com.caucho.quercus.servlet.QuercusServlet">
                <init>
                        <script-encoding>UTF-8</script-encoding>

                        <php-ini>
                                <unicode.semantics>on</unicode.semantics>
                                <unicode.runtime_encoding>UTF-8</unicode.runtime_encoding>
                        </php-ini>
                </init>
        </servlet-mapping>
</web-app>

Removing the unicode.semantics tag makes the application work, but non standard characters look bad.

Version information

Resin-4.0.38 (built Tue, 17 Dec 2013 09:48:45 PST)
[14-03-18 10:22:40.776] {main} Mac OS X 10.9.2 x86_64
[14-03-18 10:22:40.776] {main} Java(TM) SE Runtime Environment 1.7.0_45-b18, UTF-8, en
[14-03-18 10:22:40.776] {main} Java HotSpot(TM) 64-Bit Server VM 24.45-b08, 64, mixed mode, Oracle Corporation

Any suggestions?

UPDATE: seems to work ok using resin 4.0.33


Solution

  • Confirmed as a resin bug and fixed in upcoming release.

    https://groups.google.com/forum/#!topic/caucho-quercus/YGpMj3Y_M2Q