Huchen's profile飘雨江南 飞雪塞外 情剑两双孤PhotosBlogLists Tools Help

Blog


    November 10

    依旧漂泊在大连

    这个城市,转眼4个半月了
     
    August 14

    下雨了!

    持续一周的高温后
    大连终于下雨了
     
    好凉爽啊
     
    期望每天都这么凉快
    才能不负大连旅游城市的盛名
    August 04

    感冒结束了

    感冒终于结束了
     
    痛苦了一周
    August 03

    感冒第四天

    看来我不吃药的决定是对的
    身体的抵抗力才是快速告别感冒的良药
     
    第四天,感冒明显好转了
    估计周末又可以出去玩了
     
    August 01

    感冒的七夕

    运气不佳啊
    生平头一次夏天感冒,发生在了大连
     
    呵呵
    今天感冒的第二天了
    July 26

    出差------大连

    来到大连3个星期了
     
    气候确实很舒服啊,都不用打开空调
     
    晚上开着窗户也没有蚊子打扰
     
    海风稍有些冷
     
    很适合居住啊
     
    就是城市建设不太好,并不是很干净
     
    下雨天,大连很难过,堵车啊堵车
    有些地方地势太低了,雨下大,车就没法通过了
    只能绕路

    打开电视后

      一、
      各位众,里是法治目。近期,XX警方成功地破了一起重大地下球案件,抓犯罪嫌疑人5名。警方提醒大家,任何形式的球都是法的,非法博者最都将之付出代价……
      (半个小后)
      各位众,世界杯目又跟您面了,打我的声讯热线电话、或送短信参加我的有奖竞猜活里有万元大等你拿!
      二、
      各位众,里是天网恢恢目,我是主持人恢恢。今年5月警方破了一起因索要拖欠工生的命案,是一起人深省的案件,警方提醒广大民工朋友,要追逃被拖欠的工,一定要依靠正当的法律途径…….
      (半个小后)
      各位众,接下来是剧连收看命七命大侠命江湖电视连续剧,它们讲述的都是老百姓了争取公道而大开杀戒的故事。
      三、
      各位众,今日目。随着市场经济展,在公共所乱打广告的象越演越烈,有的打在公交上、有的打在报纸刊物上,有的打在市区路牌上、有的甚至打在学校旁上。有的广告用词暧昧、非常不雅,重影响了城市的形象和青少年的心理健康;在此,我们强烈呼吁有管一管些随处张贴的广告,决制止他们这种为经济利益、不他人感受的行请别,广告之后我
      广告1——中国女人:洁尔阴洗液,消除白、炎症,3道炎……”
      广告2——外国娘都用妇阴洁……”
      
      四、
      各位众,里是社会目,本目由移通特播放。近来,村的民生活提高了,但封建迷信活随之也死灰燃、大行其道了。我者在某村采访时,看到有不少看相算命、抽算卦的地下档。跟随我们记者的镜头,一起来看看人的把……
      
      (半个小后)
      
      广告:众朋友,您想知道您的前世、来世?您想知道你的今世姻缘吗赶快拿起手机送短信,移户发送到12345通用户发送到54321,您就会知道天意和命运。
      五、
      各位众,里是天天315”目。众所周知,消者是上帝,但在XX商店,消者却成了强买强卖牲品……
      (半个小后)
      通知:近期我台将推出数字电视各位用在三日内带齐所有料到我台理申,申自愿多交。逾期不理申的以后只能收看六个台,一切后果自
      六、
      各位上好,迎收看闻联目。目前,全国各族人民掀起了一个又一个学八耻的高潮,大家纷纷表示,要用实际动实总书记提出的以辛勤劳动为荣、以好逸恶劳为
      (10后)
      昨天,一夜走、一夜暴富的李愚春等艺员深入村,切看望作一子、得叮当响的大叔、李贫农,向他了牙膏、可、零食等物品,并们签名留念。
      羞愧地们劳作了一子,不如你一分钟挣得多啊!
      大叔感激地拉着李愚春的手谢谢谢谢们这些光人!
      李大含着李愚春小伙子真,要不是个子矮了点,我球的姚明来了呢!
    March 15

    weblogic多字节环境中的问题

    对于 WebLogicServer 系统中的 IANA-Java 映射,IANA 字符集名“Shift_JIS”作为 Java 编码名 Shift_JIS 进行处理。因此,在 JSP、Servlet 或 Web Service 使用 Shift_JIS 时,其操作将与以前版本不同。例如,MS932 专有字符(“@”等)将变为“?”。因此,如果希望一如既往地使用 MS932,则应当使用 IANA 名称“Windows-31j”。要使用 MS932,请采用下面的方法 1 或 2。

    方法 1 --- 重写 JSP/Servlet 的程序文件。

    1. --- 对于 JSP,在 page 标记中将 Shift_JIS 重写为 Windows-31J。

      示例:

      当 JSP 中存在以下行且使用 MS932 字符时,请将

      <%@ page contentType="text/html; CHARSET=Shift_JIS" %>

      重写为:

      <%@ page contentType="text/html; CHARSET=Windows-31J" %>

    2. --- 在 Servlet 中更改 setContentType() 的规范。

      对于 Servlet,当存在以下规范且使用 MS932 字符时,请将

      response.setContentType("text/html;charset=Shift_JIS");

      重写为:

      response.setContentType("text/html;charset=Windows-31J");


    “Windows-31J”是在 IANA 中正式注册的字符集名称,等同于 Microsoft 代码页 932。在 Java 中,MS932 等同于 Microsoft 代码页 932。因此,Java 中的“MS932”便是 IANA 的“Windows-31J”。实际上在 Java 中,“Windows-31J”也是 MS932 的别名。就目前而言,保持 Java 编码名与 IANA 名称的一致渐成趋势。如果将来希望使用对应于 Microsoft 代码页 932 的字符集,则强烈建议使用“Windows-31J”。

    方法 2 --- 在 weblogic.xml 中更改映射(不遵从 J2EE)

    在 weblogic.xml 部署描述符文件中,可以将 IANA 名称 Shift_JIS 强制映射为 Java 名称 Windows-31J。这样,您可以不必重写 JSP 或 Servlet 代码,便能够将 Shift_JIS 作为 Windows-31J 进行处理。请在 weblogic.xml 中包括以下项,然后重新部署 Web 应用程序。

    代码列表 1-1:weblogic.xml

    <!DOCTYPE weblogic-web-app PUBLIC "-//BEA Systems, Inc.//DTD Web Application
    8.1//EN" "http://www.bea.com/servers/wls810/dtd/weblogic810-web-jar.dtd">
    <weblogic-web-app>
      <charset-params>
        <charset-mapping>
          <iana-charset-name>Shift_JIS</iana-charset-name>
          <java-charset-name>Windows-31J</java-charset-name>
        </charset-mapping>
      </charset-params>
    </weblogic-web-app>

    但是,这种方法是 WebLogic Server 特有的,不遵从 J2EE。换句话说,它不能与其他 J2EE Servlet 容器交互操作。而且,由于 IANA 名称“Shift_JIS”完全等同于 JIS X 0201 + JIS X 0208 字符集,因此,将“Shift_JIS”作为 Microsoft 代码页 932 使用是不恰当的。只有当出于某种原因难以修改 JSP 或 Servlet 代码时,才应使用这种方法。

    全局字符集映射

    在 WebLogicServer 8.1 中,可以使用全局 IANA-Java 字符集映射。直到现在,还特意保留了许多组件,以便将 IANA 字符集名称映射到 Java 编码名称。将这些名称汇集在一起可以保持一致性,即使在跨组件执行 IANA 名称与 Java 名称之间的映射时也是如此。

    遵从 SOAP 1.2 媒体类型

    在 SOAP1.2 的 HTTP SOAP 消息中使用的媒体类型是“application/soap+xml”。其操作与已在 SOAP1.1 中使用过的“text/xml”媒体类型的操作基本相同,但是,如果未在 HTTP 头的 contentType 中指定字符集,其操作会有所不同。

    [HTTP,未指定 contentType 字符集]

    SOAP1.1:

    默认字符集是 us-ascii。在 XML 头中指定的编码将被忽略。在 WebLogic Server 8.1 中,SOAP1.1 消息遵从 RFC2376,因此该编码可被处理。

    SOAP1.2:

    在 XML 头中指定的编码有效。如果未在 XML 头中指定编码,则默认字符集为 UTF-8。在 WebLogic Server 8.1 中,SOAP 1.2 消息遵从 RFC3023,因此该编码可被处理。

    WebLogic Server 生成的 SOAP 消息的编码规范

    WebLogic Server 生成 SOAP 消息时,默认字符编码为 UTF-8。在 WebLogic Server 8.1 中,可以根据所使用的环境为生成的 SOAP 消息指定编码。

    指定编码的方法有三种:第一种方法是为由 Web Service 强制生成的消息确定编码;第二种方法是在客户端 HTTP 请求的 HTTP 头中指定“Accept-Charset”参数,并针对该请求生成编码;第三种方法是在服务器启动时指定默认编码。

    为生成的 SOAP 消息指定编码的方法

    1. web-service.xml 部署描述符的 charset 特性
    2. 客户端 HTTP 请求中的 Accept-Charset
    3. -Dweblogic.webservice.i18n.charset

    注意: 服务器默认编码为 UTF-8

     

    在 URL 中使用多字节字符 (CR092089)

    通过 servlet 容器(Web 容器),现在可以在 URL 中使用多字节字符。根据所使用的用户代理(Web 浏览器等),可以根据需要对服务器进行设置。

    例如,如果收到以下类型的 HTTP 请求,

    http://myHostName:port/myContextPath/myRequest/?myRequestParameter


    myContextPath 和 myRequest 部分将按如下进行处理。

    注意: myRequestParameter 部分位于 URL 后面,可以通过指定为 Servlet 的 setCharacterEncoding() 的编码或指定为 weblogic.xml 的 input-charset 的编码进行解码。对于 myHostName 部分,建议采用符合 IESG 标准的国际域名。

    默认操作(通过基于 UTF-8 的编码进行 URL 解码)

    如果未进行任何设置,WebLogic Server 8.1 将按如下方式处理请求。

    1. 对 myContextPath 和 myRequest 部分的 URL 进行解码
    2. 解码为 UTF-8 字符串,并生成在步骤 1) 中获取的字节流的字符串


    例如,如果用户代理(Web 浏览器)是 MS IE (Microsoft Internet Explorer),则默认情况下,在地址栏中输入的多字节字符将首先编码为 UTF-8,然后进行 URL 编码。在 WebLogic Server 8.1 中,默认情况下,可以正确生成以 UTF-8 编码方式发送的此 URL 的字符串。

    注意: 在 IE 的“Internet 选项”-->“高级”中,包含一个名为“总是以 UTF-8 发送 URL(需要重启动)”的选项,而且此选项必须处于启用状态(选中)。

    对 URL 进行解码时指定字符编码的方法

    当用户代理是 Netscape 时

    如果用户代理是 Netscape,地址栏中的字符将按照 Netscape 运行环境中的字符集进行编码,然后,该字符串再次进行 URL 编码,并被发送到服务器。例如,在日语版 Windows 中编码为 Windows-31J 的字符串将进行 URL 编码。在 WebLogic Server 8.1 中,可以将此请求设置为在进行 URL 解码之后将字节流解码为 Windows-31J,从而正确接收此请求。通过下面的 WebLogicServer 启动选项,可以更改用于执行 URL 解码的编码方式。

    -Dweblogic.http.URIDecodeEncoding=Windows-31J(默认值为 UTF-8)


    但是,对于每个服务器实例,只能存在一个这样的设置。

    使用专有的用户代理时

    如果需要在请求 URI 中使用多字节字符,请将该字符串转换为 UTF-8 字节字符串,然后进行 URL 编码,再将其发送到 WebLogicServer。

    W3C 建议在创建 URI 时基于 UTF-8 进行 URL 编码。(http://www.w3.org/TR/charmod/#sec-URIs)

    按照 JSP J2EE 规范进行的更改(WebLogic Server 7.0 或更高版本)

    在 JSP 1.2 规范中,如果存在多个 Page 指令,则产生“致命转换错误”。(CR066562)


    摘自 JSP1.2 ---- JSP.2.10.1

    JSP.2.10.1 page 指令


    page 指令定义一些与页面相关的属性,并将这些属性传送到 JSP 容器。


    转换单元(JSP 源文件及通过 include 指令包含的任何文件)可以包含 page 指令的多个实例,所有特性都将应用于整个转换单元(即 page 指令与位置无关)。但是,除 Import 特性之外,在给定的转换单元中,此指令定义的任何特性/值只应出现一次;Import 特性的使用次数将进行累计(使用有序集联合语义)。除此之外的其他多个特性/值定义(或重定义)将导致致命转换错误。


    这就是说,如果一个编译单元出现多个 page 指令,将会产生致命转换错误。在 WebLogicServer Server 7.0 中,已对 JSP 操作进行了更改,使其符合此规范。

    在将一个单独的 JSP 文件包括在静态包含文件 (<%@ include file=. . . %>) 中时,如果包含源与包含目标都有相应的 page 指令,这种更改会出现问题。在静态包含文件中,JSP 容器将计算所有的 jsp,从而会导致它们包括在一个编译单元中,而且这种情况下会生成多个 page 指令,并出现“致命转换错误”。

    为避免这种问题,WebLogic Server 7.0 中准备了下列选项作为 weblogic.xml 的新参数。

    代码列表 1-2:weblogic.xml 中新添加的参数

    <jsp-param>
      <param-name>backwardCompatible</param-name>
      <param-value>true</param-value>
    </jsp-param>


    通过此参数,只要编码相同,即使一个编译单元中出现多个 page 指令,也不会出现错误。

    J2EE 默认编码规范(WebLogic Server 7.0 或更高版本)

    在 weblogic-application.xml 中,可以为整个 J2EE 企业应用程序的请求和响应指定默认字符编码。(CR065921)

    在 weblogic-application.xml 中,可以通过以下参数来设置用于请求和响应的默认编码。

    • webapp.encoding.usevmdefault = true | false
    • webapp.encoding.default = java 编码名称


    注意:在 webapp.encoding.default 中指定的值是 Java 编码名称,而不是 IANA 字符集名称。

    如果同时设置了上述两个选项,将使用 webapp.encoding.usevmdefault。

    可以分别设置这些响应和请求值。此外,这些选项仅会应用于响应和请求,它们不会应用于 JSP 编译过程中的编码读取操作。有关分别设置响应和请求值的方法以及 JSP 文件编码的详细信息

     

    weblogic-application.xml 中的 webapp.encoding.usevmdefault 用法示例

    <application-param>
      <description>webapp.usevmdefault</description>
      <param-name>webapp.encoding.usevmdefault</param-name>
      <param-value>true</param-value>
    </application-param>

     

    或者
    weblogic_application.xml 中的 webapp.encoding.default 用法示例

    <application-param>
      <description>default encoding</description>
      <param-name>webapp.encoding.default</param-name>
      <param-value>SJIS</param-value>
    </application-param>


    WTC TUXEDO 域的编码规范 (CR052022)(WebLogic Server 7.0 或更高版本)

    可以为 TUXEDO 域指定 wtc 域编码。在启动时指定以下参数。更改服务器的启动脚本(StartWebLogic.cmd 文件等)。

    -Dweblogic.wtc.encoding=Java encoding name


    此编码规范对于整个 TUXEDO 域有效。

    XML -- StreamParser 中的多字节字符处理(WebLogic Server 7.0 或更高版本)

    为了将编码信息添加到使用 XML 流 API 生成的 XML 头中,请按如下方式使用 ElementFactory 类的“createStartDocument()”。

    XMLOutputStreamFactory factory = XMLOutputStreamFactory.newInstance();
    XMLOutputStream output = factory.newOutputStream(new
    			OutputStreamWriter(new FileOutputStream(fname),"Shift_JIS")); 
    output.add(ElementFactory.createStartDocument("Shift_JIS","1.0"));
    output.flush();


    与 xerces 解析器相似,使用 XML 流 API 解析包含日语的 XML 文档时,请注意以下几点。

    • 在解析器输入中使用流时请使用字节流。

      通过使用字节流,可以使用解析器的 XML 编码自动身份验证功能。解析器在内部生成适合 XML 头编码规范的流,从而确保了解析的正确性。

    • 在作为 Unicode 字符流传递时,解析器将忽略 XML 头中的编码规范。

      这种情况下,用户负责传递正确的字符流。


    部署描述符文件中的编码处理

    在 WebLogic Builder 或管理控制台中编辑和保存部署描述符文件时,会保存初始部署描述符的编码。如果在部署描述符文件的 XML 声明中没有指定编码特性,该文件将按 UTF-8 处理。

    December 19

    wap标准,手机支持的可真差

    各个手机支持wap的情况可真差
    有的不认识这个标签
    有的不认识那个标签
    统一的接口规范定出来和没定差不了多少
    一样的每款手机测试

    官僚主义

    来沈阳办理手续办理了5天了,终于等到相关部门上班的时候了
    唉,好低的效率阿
    November 25

    丢人啊

    单位算错了一下
    还好马上反应过来了
     
    1秒=1000毫秒=1000000微妙=1000000000纳秒
     
    计算反应时间,差了好几个数量级呢
    July 03

    大家都在为了凉爽而努力着

    晚上,走在上海的马路上
    可以看到一家家的把躺椅搬出来,
    还有一家家的把大澡盆搬出来,在街旁洗个澡……
    June 28

    上海的人为什么这么多?

    比蚂蚁还多
    为什么?
    如此不适合人居住的地方……
    June 26

    上海就是一个大火炉,外加蒸汽炉

    车门刚一打开,一股热浪就袭来!

    下意识的念头是我要躲回车里去,又闷又热,自己就像烧烤炉里的一块肉,在被烤着,

    一方水土啊

    夏天应该到长春或者昆明去避暑的!

    June 24

    一切搞定

    终于搞定了,Wap的网站,Java电子书,彩信书,联调顺利。

     

    休息一个晚上,明天去上海:P

    June 23

    工作是无止境的

    人,都是肉做的,不能写出完美的不需要更改的代码来。

    这两天又在维护原来的支付系统和Wap代码了。

    不过虽然不能写出完美的不需要维护的代码,但是却能控制另一点,就是写出易于维护的代码,可配置,可扩展的代码,这样在维护,阅读,交给别人维护的时候,都很容易去修改了,只要结构,设计不变。

    *^_^*

    June 21

    Wap网站建起来了

    呵呵,今天终于写完了

    虽然只实现了功能,没有美观界面:)

    剩下的界面美观,以后再做了

    放松一下

    休息休息

    June 01

    六一了,呵呵

    呵呵,六月份了,新的东西要开始做了

     

    May 27

    搞定了自动生成Java电子书

    根据手机型号,手机类型,支持Java的种类,来自动生成适合自己的Java电子书籍

    休息一个周末,下一步把Unijava的电子书和BREW的电子书写完

     

    May 20

    周五了

    快周末了,预定目标还没有完成………………

    本周的杂事情太多了:(