我有一个基于Spring和maven的Java Web应用程序。
我有一个XML文件用作配置。我正在通过JAXB解析它并且它正常工作。这是一个示例文件。
<?xml version="1.0" encoding="UTF-8"?>
<sources>
<source name="source1">
<bean class="com.myapp.demo.SourceDemo" />
<bean class="com.myapp.demo.Source2" />
</source>
</sources>
我为此XML生成了XSD。这是XSD文件..
<xs:schema attributeFormDefault="unqualified" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="sources">
<xs:complexType>
<xs:sequence>
<xs:element name="source">
<xs:complexType>
<xs:sequence>
<xs:element name="bean" maxOccurs="unbounded" minOccurs="0">
<xs:complexType>
<xs:simpleContent>
<xs:extension base="xs:string">
<xs:attribute type="xs:string" name="class" use="optional"/>
</xs:extension>
</xs:simpleContent>
</xs:complexType>
</xs:element>
</xs:sequence>
<xs:attribute type="xs:string" name="name"/>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>
这是我用XML导入的,它工作正常。当我解析时,我将类值作为String。
现在class属性值是String。但是我想把它作为一个类提供者,所以当我开始用包输入类名并按Ctrl + Space时,它应该给出填充类名的选项,就像在Spring applicationcontext.xml中一样
我该怎么做?这就是我的尝试。
<xs:attribute type="xs:string" name="class" use="optional">
<xs:annotation>
<xs:documentation source="java:java.lang.Class">
</xs:documentation>
</xs:annotation>
</xs:attribute>
但是当我开始输入并按下Ctrl + Space时,它没有给出任何选项。
答案 0 :(得分:0)
IDE(例如STS)具有Spring XML文件的编辑器扩展。除非您的XML实际上 是一个Spring配置文件,否则使用架构中元数据的那个技巧将无效。遗憾。