10
00.00.2000 Internationaliza Internationaliza tion of HTML tion of HTML client-server client-server applications applications Andrea Vine iPlanet Internationalization Architect

00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Embed Size (px)

Citation preview

Page 1: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

00.00.2000Internationalization of Internationalization of HTML client-server HTML client-server applicationsapplications

Andrea Vine

iPlanet Internationalization Architect

Page 2: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Designing the functional interfaceDesigning the functional interface

• Plan for i18n when you create your specifications

• Consider the nature of the data your application is processing

• How will the majority of customers access the application?

• Will users be working with one language at a time or with multiple languages?

Page 3: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Some concepts and limitationsSome concepts and limitations

• Each HTML page is limited to a single charset

• The CGI script has no knowledge of the client

• Provide customers ways to access the interface by language

• Create a single home page displaying a choice of languages on it

• Allow for customization of the initial access point

Page 4: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Choosing the CGI languageChoosing the CGI language

• Any programming language is internationalizable

• The classic CGI script has no persistence in server memory

• There are server utilities that provide an API for CGI scripts

• Java servlets are persistent as well, but they require Web servers with servlet support

Page 5: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Writing the HTMLWriting the HTML

• Create the configuration of pages, frames, and browser windows

• META tag or comment with proper charset

• Use fixed text as images to solve some charset incompatibility

• Alternate text for images may not always work

Page 6: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Managing HTML FORMsManaging HTML FORMs

• FORM data is submitted in the charset of the page/frame

• Input text and textareas are handled by the native system

• Pre-filled text may not always look right• Charset conversions and defaults in

browsers

Page 7: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

• <SELECT> and <OPTION> tags - value parameter, dynamic filling

• Local file access and other browser-controlled elements

• Testing environment may not work like actual environment

Page 8: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Coding the CGI script/programCoding the CGI script/program

• Writing internationalized CGI is like writing any internationalized programs

• Parse FORM fields, gathering charset and locale values first

• Code workarounds for mismatched client and server charsets, locales

• Inspect for other data, such as HTML inside input text

Page 9: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Test your applicationTest your application

• Set up machines in various locales as clients

• Run server in various locales• Use different browsers and versions• Invite customers to beta test

Page 10: 00.00.2000 Internationalization of HTML client-server applications Andrea Vine iPlanet Internationalization Architect

Where to find out moreWhere to find out more

• Discussion lists – [email protected]• Book – Global Solutions for Multilingual

Applications, by Chris Ott