在XSD中,需要定义一个安装路径的数据类型,要求如下:
1. 使用斜线/分割路径,路径开头不能有斜线"/",路径中间不允许有空格,路径末尾可以有斜线,
形如: xxx/yy.yy/zz_zz/
解决办法:
1. 因为路径可能很长,但是他有规律,即我们首相匹配最短的一段,抽象出正则表达式:
[^/\s](a-zA-Z0-9_.]+[/]?
2. 使用xsd中的xsd:pattern来定义一个验证表达式,并且可以重复1中得正则式去做验证。
匹配最短路径的正则式我们已经写出来了,那么如何在xsd中重复使用这个式子去循环匹配后面的路径呢?
通过查找网上资料发现,在xsd中可以这么写,通过小括号把正则式括起来,然后添加上重复要求的字符就可以了,看最终的定义:
<!-- The definition of a install path --> <xsd:simpleType name="installPathType"> <xsd:annotation> <xsd:documentation> The install path of the package element. It must not be empty. </xsd:documentation> </xsd:annotation> <xsd:restriction base="xsd:token"> <xsd:pattern value="([^/\s][a-zA-Z0-9_.]+[/]?)+"/> </xsd:restriction> </xsd:simpleType>
我们使用+指示至少匹配1次,这样就可以保证数据中有最短合法路径,且对路径长度没有限制了。
相关推荐
Enterpsise Enterpsise Enterpsise Enterpsise Enterpsise XSD定义指南 总共2部分
File——new——Web Project,在Project Name中输入一个合法的名字。例如:struts2 2. 单击采单Window——Preference——Java——Installed JREs选中jdk1.6,如果没有单击右边的ADD添加,在MyEclipse Blue Edition...
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">...
一 使用Axis和XFire发布Web Service 1.1 准备工作 Axis主页: http://ws.apache.org/ Axis下载:http://archive.apache.org/dist/ws/ XFire主页:http://xfire.codehaus.org/ XFire下载:...
[ASP.NET 2.0]PageParser.GetCompiledPageInstance中存在一个Bug 如何在DotNet 2的登录组件中检索用户的锁定状态及解锁? ASP.NET 2.0, 想说爱你不容易 SqlDataSource WEB控件:当DeleteCommandType= 遭遇 ASP.NET ...
<url-pattern>*.vm</url-pattern> <servlet-name>hello <servlet-class>com.meiyoudao.velocity.HelloVelocity</servlet-class> <servlet-name>hello <url-pattern>/hello</url-pattern> ...
serverlet Json commons-beanutils-1.7.0.jar commons-collections-3.2 .jar commons-lang-2.4.jar commons-logging.jar ezmorph-1.0.6.jar json-lib-2.2.3-jdk15.jar ... <url-pattern>/</url-pattern> </web-app>
web.xml 中定义了一个名为 annomvc 的 Spring MVC 模块,按照 Spring MVC 的契约,需要在 WEB-INF/annomvc-servlet.xml 配置文件中定义 Spring MVC 模块的具体配置。annomvc-servlet.xml 的配置内容如下所示: ...
<url-pattern>/index.jsp</url-pattern> <!-- SingleSignOutHttpSessionListener LISTENER --> org.jasig.cas.client.session.SingleSignOutHttpSessionListener <welcome-file>index.jsp ...
使用Maven POM editor打开项目中的pom.xml文件,选择Dependencies,在Dependencies栏目点击Add进行,首先弹出一个搜索按钮,例如输入spring-web,就会自动搜索关于spring-web相关的jar包,我们选择3.0.5版本的spring...
网上有说需要这个又有说不需要这个,需要根据实际情况来定,实在不行就自己一个一个加,先从struts的core包开始,如果缺少jar包启动的时候就会报错,缺哪个加哪个。 2、打开MyEclipse(我用的是6.5)新建Web工程 ...
一个基于EXT实现的树,先上图。 动态加载加右键菜单。 希望拿到可以跑起来看看效果的,需要按以下步骤做。 1 安装oracle,这个例子只做了oracle版本,如果需要,后期可以加上mysql版本,呵呵。 2 运行建用户及表...
<url-pattern>/*</url-pattern> <!-- Character Encoding filter --> <!-- Character Encoding filter --> <filter-name>encodingFilter <filter-class>org.springframework.web.filter....
为了完成测试,我先在IndexController中添加了两个简单方法,一个是登录方法,一个是进入用户中心方法。需要注意的是如果要往redis中存入对象,则需要改对象序列化才能存入。我这里为了方便,就用fastjson将对象转为...
1.在myeclipse中新建一个项目jeecms,将服务器中jeecms项目下web-inf文件夹下内容拷到新建项目中 解压缩jeecms-3.0.2-final-src,在src文件夹下会看到有三个压缩文件,如果只想进行普通的二次开发,可以只导入cms这...
配置 DispatcherServlet (servlet 标签), 它是一个 Java Servlet 程序. 我们将它命名为 ideawu. 然后我们再配置 Servlet 映射(servlet-mapping 标签), 也就是你希望哪些请求被DispatcherServlet处理. 这里, 我们设置...
请注意,这里面有一个方法名 selectUserByID 必须与 User.xml 里面配置的 select 的id 对应() 重写测试代码 程序代码 程序代码 public static void main(String[] args) { SqlSession session = ...