草庐IT

java - 使用没有 XSD 模式文件的 XML 文件生成 java 绑定(bind)类?使用任何 Castor 或 JAXB 框架

我需要从XML文件创建java模型类(绑定(bind)类)。不幸的是我没有XSD架构。已有许多XML。奇怪的是,Castor或JAXB都使用XSD架构来生成绑定(bind)模型类。如果您没有模式怎么办?并非所有XML都是使用Schema创建的! 最佳答案 您可以使用架构推理工具,例如Trang.它可以从xml生成xsd。然后您可以调整生成的模式或直接将其提供给JAXB/Castor等。 关于java-使用没有XSD模式文件的XML文件生成java绑定(bind)类?使用任何Castor或

使用自定义字段处理程序的 Java castor

我一直在尝试编写一个自定义字段处理程序,该处理程序在写入XML时返回java.awt.Image对象的哈希码,并在将XML绑定(bind)到对象时基于此哈希码检索图像。出于某种原因,我无法让它工作;castor,据我所知,只是实例化字段处理程序,然后不调用它的任何方法。你能给我一个简单的例子来说明如何做到这一点吗,因为我一定错过了一些简单的东西!干杯,皮特 最佳答案 粘贴您的代码可能是个好主意。无论如何,以下对我来说很好和处理程序本身publicclassColorFieldHandlerextendsGeneralizedFiel

java - XSD 架构字符串元素加密/解密

我怎样才能使XSD模式字符串元素(密码)作为加密类型,这又将在XSD中用于java代码生成器在XML的写入/读取过程中加密和解密,而不仅仅是验证。是否有任何XSD到java类生成器提供此功能??干杯,雷迪。 最佳答案 您可以使用XmlAdapter来控制数据在XML和Java之间的转换方式。此XmlAdapter用于Hook您自己的加密逻辑。下面是我给出的答案的链接,该答案演示了如何在从XML模式生成模型时创建XmlAdapter。UsingJAXBgeneratedclassforanelementthatrequiresanin

java - Castor 为 xsd 中的整数类型生成 BigDecimal 类型

我使用的xsd架构如下:意思是像XML:111000111但是Castor只为这个模式生成BigDecimal类型:publicabstractclassTrxIdRs_Typeimplementsjava.io.Serializable{//--------------------------///-Class/MemberVariables-///--------------------------//***internalcontentstorage*/privatejava.math.BigDecimal_content;/***Field_trxStatusCode.*/pr

java - Spring 和 CastorMarshaller : add namespace to XML root

我的Java应用程序试图从网络服务获取信息。XML请求需要在XML根元素(类名)中指定命名空间,但标签(类字段)的命名空间需要为空(null),否则webservice将拒绝请求。我必须将Spring3.0和SpringWS2.0与CastorMarshaller(目前使用Castor1.3.1版)结合使用,以便将我的Java对象编码到XML中/从XML中解码。请注意以下代码片段中的__PREFIX__和__NAMESPACE__位置。所需的编码输出(即所需的生成的SOAP请求)fieldValue当前编码输出(即生成的SOAP请求)不添加命名空间fieldValue或者给所有元素添加

java - Castor XML 映射和 java.util.Map

我一直在使用Castor在过去的几天里,我试图以一种可读的方式在我的Java程序和XML之间进行一些序列化。尽管它有一些缺点,但Castor通过反射自动生成xml实际上非常实用。不幸的是,示例中似乎完全没有涉及的一件事是处理泛型。看起来反射API做得很好,但是由于方法以get___()开头,无意中抓取了很多冗余数据,所以我想自己写一个映射文件来避免这个关闭。首先,在“field”元素的属性中,应该定义“type”似乎是完全公平的。但是,它没有指定如果此类型是抽象类型或只是一个接口(interface)应该做什么。那我应该把什么作为类型呢?其次,Castor中指定的大多数“集合”类型对象

java - Castor 能否处理从基 XSD 导入的多个 XSD 的类生成?

我有几个重用相同实体的XSD。例如,ProductPurchaseRequest.xsd的两个XSD和ProductQuoteRequest.xsd两者都有一个在其中标记以描述相关产品。为此,我创建了一个Product.xsd文件来定义标签和两个ProductPurchaseRequest.xsd和ProductQuoteRequest.xsd导入Product.xsd用`.我想使用Castor从这些XSD生成Java类,并让它们使用相同的类来表示Product这样我就可以重用相同的逻辑将它们映射到我们模型的ProductModel类。Castor能做到吗?如果是这样,它的Ant任务语

java - 如何让 Castor 忽略某些 XML 字段?

我正在维护一些复杂的Java代码,并且Castor(v1.2)解码非常慢,因为有很多“丢失”的Java对象。看,XML包含的字段比我需要的多,但Castor反复尝试实例化Java对象,导致大量ClassNotFound错误。Castor映射文件:XML来源:我的问题是color字段没有Java等效项,我不希望它解码。我尝试在castor.properties文件中设置org.exolab.castor.xml.strictelements=false,但这并不能阻止它遍历类加载路径并抛出ClassNotFound错误。如何让Castor跳过不需要的XML元素?

java - Spring:解码 XML 字符串时出现 OXM 错误(castor)

我正在做SpringIntegration项目。我想通过解码转换器将XML字符串发布到一个channel并在另一个channel中接收Java对象。在我的Spring配置中,我使用了这些channel和bean:我正在单元测试中尝试这个,所以我有自动连接的channel可以使用:@Autowired@Qualifier("channels.pubsub.inXml")MessageChannelinXmlChannel;@Autowired@Qualifier("channels.fromXmlChannel")MessageChannelfromXmlChannel;我想要解码的贸易

java - 如何更改 Castor 映射以从 XML 输出中的元素中删除 "xmlns:xsi"和 "xsi:type"属性?

如何更改Castor映射抑制XML输出元素中的xmlns:xsi和xsi:type属性?例如,而不是输出XMLTester12US我更愿意Tester12US这样元素名称就意味着xsi:type。 最佳答案 将CastorMarshaller属性suppressXSIType设置为false:Marshallermarshaller=newMarshaller(w);marshaller.setSuppressXSIType(true);参见ConfiguringtheMarshaller在Castor1.3.1ReferenceD
12