-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Yuval,

On 3/8/16 12:38 PM, Yuval Schwartz wrote:
> Hello Christopher, thanks, responses below.
> 
> On Tue, Mar 8, 2016 at 6:23 PM, Christopher Schultz < 
> ch...@christopherschultz.net> wrote:
> 
> Yuval,
> 
> On 3/8/16 3:14 AM, Yuval Schwartz wrote:
>>>> Tomcat version: 8.0.22 Jdk: 1.8.0_05 Server: Amazon Linux
>>>> 
>>>> Hello,
>>>> 
>>>> I want to map my servlet to a Hebrew url pattern.
> 
> Hmm.
> 
>>>> I tried placing the hebrew url pattern both in the
>>>> "@webservlet" annotation (urlpatterns attribute) and in the
>>>> the web.xml file. In both cases it doesn't work, it's as if
>>>> there's nothing mapped to the url specified.
>>>> 
>>>> I though to specify the URIEncoding parameter of the
>>>> connector but saw that this defaults to "utf-8" in tomcat 8.
> 
> Yes, it does.
> 
> So you are trying to set the url-pattern for a servlet mapping?
> 
> When you do it -- either using @WebServlet or <servlet-mapping> --
> can you connect via JMX to observe the pattern that's been read
> into the configuration? First, I'd want to make sure that the
> Hebrew characters haven't been destroyed by the loading process of
> the XML file or by the compiler, or even by Tomcat.
> 
> 
>> Can you give me some direction on how I would do this? Maybe a
>> little more detail on jmx? There could be encoding/decoding going
>> on in the browser (firefox) and in all the elements you mentioned
>> on the server side. Any way to see the final String that the
>> server is using to match the Url pattern?

Yeah, that's why I was suggesting using JMX, since Tomcat exposes all
the configuration through it.

Launch Tomcat, then fire-up jconsole (or VisualVM, or any other tool
that contains a JMX client... both jconsole and VisualVM require that
you go to the "plug-ins" configuration and install an
easy-to-find-and-install plug-in for JMX) on the same machine (it's
easiest this way).

(I just checked, and VisualVM calls the plug-in
"VisualVM-MBeans".)visualvisual

Then, connect to the Tomcat instance and go to the BMeans tab.

You'll find your servlet under /Catalina/Servlet/host/context/[servlet].
..


Aw, crap. The mappings themselves aren't actually published via JMX. Hmm
.

>> I've done a lot of guessing and checking. For example, I used
>> the URLEncoder to get the encoded form of my urls and put that in
>> the url pattern.

Good. So you have some set of Unicode escapes like \u0fe64 or whatever
in the url-pattern string in your annotation?

>> Therefore, the xml loading process/compiler/tomcat/netbeans 
>> shouldn't do anything to change it (in the case where I encode
>> the pattern), but the servlet still isn't found.

Well, if you use annotations, the XML shouldn't be a problem at all,
of course. But you said you were having problems using the
web.xml-based configuration, too, right?

When you type the URL into your browser, are you just typing the
Hebrew right into the browser, or have you UTF/URL-escaped it first
and then copy/pasted it into the browser (or, better yet, provide a
link from another page that isn't giving you any problems).

You might want to make sure that Tomcat is delivering all responses in
UTF-8, so that the browser (hopefully) decides to send the URL for the
*next* page in UTF-8 instead of some weird ISO-8859-1 mess.

- -chris
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iEYEARECAAYFAlbfNBIACgkQ9CaO5/Lv0PAEswCcD9K3iwDplOASR81WtIMQZVFb
77YAnisxPAcn8/vuAU1PNDQgnvGuLVlo
=LmWf
-----END PGP SIGNATURE-----

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to