网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.Drive 对象.
.如何在程序异常或正常退出JVM时执.
.Solaris系统管理课程.
.Java的网络程序设计(1).
.不让他人据为己有--用加密虎为网.
.Java核心代码例程之:(JAXP) DOM.
.JFC/Swing活学活用之创建自定义图.
.XML和Java:一个强大的组合.
.深入浅出基于Java的建造设计模式.
.Spring2.0中新的Bean类型实现原理.
.我的 O/R Mapping 之旅(一).
.continue 语句.
.Resin的使用和安装.
.J2EE 的结构.
.封装JNDI操作LDAP服务器的工具类.
.使用Cookie的Servlet程序应用和实.
.全面挖掘Java Excel API 使用方法.
.java设计模式之 Composite(组合).
.如何用SQL生成SQL批处理文件的方.
.调整 Java I/O 性能.

WebLogic Workshop 8.1中处理不带命名空间模式

发表日期:2008-1-5


摘要

  将遗留应用程序或集成系统与BEA WebLogic Workshop集成在一起时,经常要用到XML和模式。然而,某些遗留系统在最初设计时并没有包括处理XML命名空间的功能。相反,这些遗留系统只接受不带目标命名空间的无格式XML消息,而这可能导致在WebLogic Workshop中出现冲突。事实上,可以在多个模式中定义名称相同的全局类型或元素。

   本文描述了如何通过WebLogic Workshop和XMLBeans简单而有效地解决这个问题。本文假定您对XML模式和XMLBeans有一些基本了解。您可以下载本文中使用的示例。

简介

  XMLBeans提供了一种处理XML的方法,即操作代表XML的Java类。这些类是使用XML适合的模式来创建的。可以使用XMLBeans来编译一个或多个模式文件,从而生成Java类型。

   集成遗留解决方案时碰到的一个常见问题是,要与不同来源的多个模式打交道,而这些模式均未带有指定的目标命名空间。假如这些模式共享元素名称,WebLogic Workshop模式项目就无法成功编译生成的Java类型,而且还会出现诸如“Duplicate global type”或“Duplicate global element”这样的错误。下面举例说明这样一个场景。

场景实例

  假设您使用WebLogic Workshop创建了一个新的应用程序。通常您会创建一个模式项目,导入您的模式,然后WebLogic Workshop将自动把这个模式编译为XMLBeans:

<xs:schema xmlns:po="http://openuri.org/easypo" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified"> <xs:element name="purchase-order" type="customer"/> <xs:complexType name="customer"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="address" type="xs:string"/> </xs:sequence> </xs:complexType></xs:schema>

  清单 1: Schema1.xsd

   Schema1没有目标命名空间,所得到的XML文档中带有元素名称name和address,如下所示:

<?xml version="1.0" encoding="UTF-8"?><purchase-order xmlns:po="http://openuri.org/easypo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > <name>John</name> <address>123 North First St</address></purchase-order>

  清单 2: Sample1.xml

   假如您尝试从这个模式生成Java类型,它将被正确地编译为一个XMLBean。现在可以导入另一个模式:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:foo="http://openuri.org/clientdb" elementFormDefault="qualified"> <xs:element name="client-record" type="customer"/> <xs:complexType name="customer"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="address" type="xs:string"/> <xs:element name="phone" type="xs:string"/> </xs:sequence> </xs:complexType> <xs:element name="purchase-order" type="customer"/></xs:schema>

  清单 3: Schema2.xsd

   Schema2 同样没有目标命名空间。下面的XML文档就是这个模式的一个实例,它带有元素名称name, address和 phone:

<?xml version="1.0" encoding="UTF-8"?><client-record xmlns:foo="http://openuri.org/clientdb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <name>Susan</name> <address>6789 South Second St</address> <phone>408-123-4567</phone></client-record>


上一篇:Netscape 修复 JAVA 安全漏洞 人气:713
下一篇:Swing中的ActionListener响应研究 人气:741
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐