Let me repeat myself. With Java 5 encoding names have been deprecated in favor of charset names. What this means is that Java now follows the general convention and names should be spelled with a "-" so use UTF-8 also NSUTF8StringEncoding is deprecated use charset name. It used to be confusing where in some places you needed the "-" and some other you did not need it, now just leave it there. It works in all cases and it is consistent with the browsers.

Pierre
--
Pierre Frisch
[EMAIL PROTECTED]


On Jan 31, 2008, at 19:31, Ricardo Parada wrote:

Hi All,

I'm still testing my ajax stuff and I ran into this problem. My main component has the following inside the <head>...</head> tags:

<meta http-equiv="Content-type" content="text/html; charset=utf-8">

I also have eclipse preferences General > Workspace > Text file encoding set to UTF-8. My Main.woo is as follows:

{
        "WebObjects Release" = "WebObjects 5.0";
        encoding = NSUTF8StringEncoding;
}

Then my application object overrides createRequest() to tell the request as soon as possible that our form values are encoded in UTF8 :

public WORequest createRequest(....)  {
        WORequest request = super.createRequest(...);
        request.setDefaultFormValueEncoding("UTF8");
        return request;
}

The application appendToResponse also does UTF8 for the content encoding before generating the response:

public void appendToResponse(WOResponse response, WOContext context) {
        response.setContentEncoding("UTF8");
        super.appendToResponse(response, context);
}

I can type in accentuated characters into the html file and the page displays in the browser fine.

Also, in the text fields inside a form, I can type in these characters, submit by clicking the submit button and the application receives the characters and redisplays the page. Everything displays correctly.

The problem comes in when I submit the values using AJAX. Again the application receives the characters correctly. I check by printing the values to the console. Then the application generates an ajax response. I make sure to response.setContentEncoding("UTF8") for my ajax response. The response contains html. It's just an html fragment so it doesn't have a <meta ...> tag in there.

On firefox the response displays correctly. However, on Safari my ñ character turns into ñ
Then my é character turns into é

Any ideas why my ajax response doesn't display correctly in Safari? Any ideas what I may be missing?

Thanks,
Ricardo


_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/pierre%40apple.com

This email sent to [EMAIL PROTECTED]

_______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      ([email protected])
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/webobjects-dev/archive%40mail-archive.com

This email sent to [EMAIL PROTECTED]

Reply via email to