首页 \ 问答 \ 使JAXB XJC为简单类型生成一个包装类(Make JAXB XJC generate a wrapping class for a simple type)

使JAXB XJC为简单类型生成一个包装类(Make JAXB XJC generate a wrapping class for a simple type)

我有以下xml类型:

<xsd:element name="FaxNumbers" minOccurs="0">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="FaxNumber" type="FaxNumber" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

FaxNumber类型如下所示:

<xsd:simpleType name="FaxNumber">
    <xsd:restriction base="xsd:string">
        <xsd:minLength value="1" />
    </xsd:restriction>
</xsd:simpleType>

产生的XML应该是这样的:

<FaxNumbers>
    <FaxNumber>3878374</FaxNumber>
    <FaxNumber>387833434</FaxNumber>
    <FaxNumber>3878334</FaxNumber>
</FaxNumbers>

当运行JAXB XJC从XSD生成Java类时,它会生成以下类:

@XmlType(name = "FaxNumbers")
public class FaxNumbers  {

    /**
     * No comment.
     */
    @XmlElement(name = "FaxNumber", required = true)
    protected List<String> faxNumber = new ArrayList<String>();

}

不过,我想将FaxNumber绑定到复合类,如下所示:

@XmlType(name = "FaxNumbers")
public class FaxNumbers  {

    /**
     * No comment.
     */
    @XmlElement(name = "FaxNumber", required = true)
    protected List<FaxNumber> faxNumber = new ArrayList<String>();

}

Where FaxNumber class looks like this:

public class FaxNumber{

    @XmlValue
    private String value;
}

有没有办法在JAXB绑定xml中定义这种绑定?

注意:不幸的是,我无法控制并且无法更改XSD


I have the following xml types:

<xsd:element name="FaxNumbers" minOccurs="0">
    <xsd:complexType>
        <xsd:sequence>
            <xsd:element name="FaxNumber" type="FaxNumber" maxOccurs="unbounded" />
        </xsd:sequence>
    </xsd:complexType>
</xsd:element>

The FaxNumber type looks like this:

<xsd:simpleType name="FaxNumber">
    <xsd:restriction base="xsd:string">
        <xsd:minLength value="1" />
    </xsd:restriction>
</xsd:simpleType>

The resulting xml should be something like this:

<FaxNumbers>
    <FaxNumber>3878374</FaxNumber>
    <FaxNumber>387833434</FaxNumber>
    <FaxNumber>3878334</FaxNumber>
</FaxNumbers>

When running JAXB XJC to generate java classes from XSD it generates the following class:

@XmlType(name = "FaxNumbers")
public class FaxNumbers  {

    /**
     * No comment.
     */
    @XmlElement(name = "FaxNumber", required = true)
    protected List<String> faxNumber = new ArrayList<String>();

}

However i would like bind FaxNumber to composite class like this:

@XmlType(name = "FaxNumbers")
public class FaxNumbers  {

    /**
     * No comment.
     */
    @XmlElement(name = "FaxNumber", required = true)
    protected List<FaxNumber> faxNumber = new ArrayList<String>();

}

Where FaxNumber class looks like this:

public class FaxNumber{

    @XmlValue
    private String value;
}

Is there a way to define such binding in JAXB bindings xml?

Note: Unfortunately I don't have control over and cannot change the XSD


原文:https://stackoverflow.com/questions/12721508
更新时间:2022-09-20 14:09

最满意答案

addjavascriptinterface, 把请求结果通过这个接口返回到android上,打印log日志。

其他回答

检查是不是scrollview和webview嵌套的问题,如果是的话,尽量不要使用scrollview嵌套,或者用framelayout替代

相关问答

更多
  • android让webview里的资源访问本地缓存 继承并实现一个ContentProvider package com.packagename.provider; public class MyProvider extends ContentProvider { @Override public ParcelFileDescriptor openFile(Uri uri, String mode){ URI fileURI = URI.create( "file://" + uri.getPath() ) ...
  • 你这样的问题与很多种说法: 比如:1.能否删除android系统———回答:可以的,更换手机系统,但一般的手机都是安卓系统,不建议(除苹果等高端产品) 2.能否删除android软件 ---------回答:可以的,在应用商店或者在杀毒软件中可以删除。 3.Android手机安装的应用长按往上托,有一个删除的按钮的。 4.手机里的Android文件可以删吗 回答:不可以删除,里面都是些系统文件和你安装的程序文件,如果你觉得该文件夹太大占用空间,最简单的办法是备份数据后刷机清理一下,同时尽量少安装些软件,注意 ...
  • 您好,很高兴能帮助您 酷盘Android版清理本地缓存文件的方法如下: 如果下载的酷盘文件占用了过多手机的空间,可以通过“设置—>用户信息—>清空本地缓存文件”选项来清理本地缓存。收藏到手机的文件不会被清理,如需清理已收藏文件,请先取消收藏再清理缓存。 你的采纳是我前进的动力, 记得好评和采纳,答题不易,互相帮助,
  • WebView的缓存可以分为页面缓存和数据缓存。 页面缓存是指加载一个网页时的html、JS、CSS等页面或者资源数据。这些缓存资源是由于浏览器的行为而产生,开发者只能通过配置HTTP响应头影响浏览器的行为才能间接地影响到这些缓存数据。 他们的索引存放在/data/data/package_name/databases下。他们的文件存放在/data/data/package_name/cache/xxxwebviewcachexxx下。文件夹的名字在2.x和4.x上有所不同,但都文件夹名字中都包含webvi ...
  • webview是个”干净“的控件,需要加入相关插件的代码,使得能够支持兼容性插件问题,例如显示AdobeFlashPlayer插件相关文件等等。解决的方法,安装相关的插件或者在代码中添加相关代码。 如果带有webview的应用在不同手机中的显示结果不同,那么很有可能是插件的问题。希望我的建议能有用。
  • 可能你使用的不正确,调试一下看看,或把代码贴出来看看!
  • mWebView.setWebViewClient(new MyWebviewClient()); class MyWebviewClient extends WebViewClient{ @Override public boolean shouldOverrideUrlLoading(WebView view, String url) { return true; } } shouldOverrideUrlLoading 这个方法就是点击网页上的超链接的回调函数 按照我这样做就没问题了。
  • addjavascriptinterface, 把请求结果通过这个接口返回到android上,打印log日志。

相关文章

更多

最新问答

更多
  • h2元素推动其他h2和div。(h2 element pushing other h2 and div down. two divs, two headers, and they're wrapped within a parent div)
  • 创建一个功能(Create a function)
  • 我投了份简历,是电脑编程方面的学徒,面试时说要培训三个月,前面
  • PDO语句不显示获取的结果(PDOstatement not displaying fetched results)
  • Qt冻结循环的原因?(Qt freezing cause of the loop?)
  • TableView重复youtube-api结果(TableView Repeating youtube-api result)
  • 如何使用自由职业者帐户登录我的php网站?(How can I login into my php website using freelancer account? [closed])
  • SQL Server 2014版本支持的最大数据库数(Maximum number of databases supported by SQL Server 2014 editions)
  • 我如何获得DynamicJasper 3.1.2(或更高版本)的Maven仓库?(How do I get the maven repository for DynamicJasper 3.1.2 (or higher)?)
  • 以编程方式创建UITableView(Creating a UITableView Programmatically)
  • 如何打破按钮上的生命周期循环(How to break do-while loop on button)
  • C#使用EF访问MVC上的部分类的自定义属性(C# access custom attributes of a partial class on MVC with EF)
  • 如何获得facebook app的publish_stream权限?(How to get publish_stream permissions for facebook app?)
  • 如何防止调用冗余函数的postgres视图(how to prevent postgres views calling redundant functions)
  • Sql Server在欧洲获取当前日期时间(Sql Server get current date time in Europe)
  • 设置kotlin扩展名(Setting a kotlin extension)
  • 如何并排放置两个元件?(How to position two elements side by side?)
  • 如何在vim中启用python3?(How to enable python3 in vim?)
  • 在MySQL和/或多列中使用多个表用于Rails应用程序(Using multiple tables in MySQL and/or multiple columns for a Rails application)
  • 如何隐藏谷歌地图上的登录按钮?(How to hide the Sign in button from Google maps?)
  • Mysql左连接旋转90°表(Mysql Left join rotate 90° table)
  • dedecms如何安装?
  • 在哪儿学计算机最好?
  • 学php哪个的书 最好,本人菜鸟
  • 触摸时不要突出显示表格视图行(Do not highlight table view row when touched)
  • 如何覆盖错误堆栈getter(How to override Error stack getter)
  • 带有ImageMagick和许多图像的GIF动画(GIF animation with ImageMagick and many images)
  • USSD INTERFACE - > java web应用程序通信(USSD INTERFACE -> java web app communication)
  • 电脑高中毕业学习去哪里培训
  • 正则表达式验证SMTP响应(Regex to validate SMTP Responses)