【转】xml文件中加入本地的dtd约束文件
首先,我是以加载Struts2的来演示:
1 我们可以看到,越是文件中的 显示的是PUBLIC, 即从网络中获取约束文件dtd ,此时我需要将其配置成从自己的本地来获取dit文件
首先,先要有struts 的jar包,然后将其解压
2 解压以后,打开解压后得文件 然后打开lib 文件 此文件主要存放的程序运行的jar包
3 然后找到struts2-core-2.3.15.3 的jar包,然后将其解压
4 解压后会看到不同版本的dtd文件, 找到与第一张中的(xml)文件中的应用的版本相同的dtd文件,(前期的工作已经完成)
5 然后进入自己的myeclipse中,点击项目,然后选中Windows --> 右击底部的preferences 然后显示出2的框图,然后输入catalog 然后点击xml catalog 显示出4 的框图点击
Add
6 出现如下的框图,key types 总选择URI Key选择与你的约束中的地址一样即可 (打开struts.xml复制地址即可)
7 Location选择之前在第四步中的解压的dtd文件的路即可 。
8 点击 ok ! 即配置完成!
转载来源:https://blog.csdn.net/jj_nan/article/details/58288989
【转】xml文件中加入本地的dtd约束文件的更多相关文章
- DTD约束文件
在讲解DTD文件之前,我要说说一份合格的XML应该符合怎么样的规则? 就我总结一下几点,大家看看就好了: 1.一份XML有且仅有一个根元素. 2.XML是严格区分大小写的,<book>元素 ...
- Effective Objective-C 2.0 — 第二条:类的头文件中尽量少引入其他头文件
第二条:类的头文件中尽量少引入其他头文件 使用向前声明(forward declaring) @class EOCEmployer 1, 将引入头文件的实际尽量延后,只在确有需要时才引入,这样就可以减 ...
- python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件
python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...
- 将一个文件中的内容,在另一个文件中生成. for line in f1, \n f2.write(line)
将一个文件中的内容,在另一个文件中生成. 核心语句: for line in f1: f1中的所有一行 f2.write(line) ...
- java算法面试题:编写一个程序,将a.txt文件中的单词与b.txt文件中的单词交替合并到c.txt文件中,a.txt文件中的单词用回车符分隔,b.txt文件中用回车或空格进行分隔。
package com.swift; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File ...
- 在myeclipse等IDE中添加本地的dtd与schema约束文件
*针对没有网络无法正确引入dtd而使用不了提示的问题 (配置完后重启IDE) window->perferences- > 搜索xml c 找到xml catalog 右边点击 a ...
- MyEclipse配置Struts2的本地工作空间中的DTD约束文件
1.拷贝URI http://struts.apache.org/dtds/struts-2.3.dtd 2.配置XML Catalog 3.struts-2.3.dtd文件来源 解压jar包\Web ...
- [Java] 在 jar 文件中读取 resources 目录下的文件
注意两点: 1. 将资源目录添加到 build path,确保该目录下的文件被拷贝到 jar 文件中. 2. jar 内部的东西,可以当作 stream 来读取,但不应该当作 file 来读取. 例子 ...
- 内容写到 csv 格式的文件中 及 读取 csv 格式的文件内容
<?php/*把内容写到 csv 格式的文件中 基本思路是:1.用 $fp = fopen("filename", 'mode')打开一个csv文件,可以是打开时才建立的2. ...
随机推荐
- Java基础-JDK、JRE与JVM的区别
JRE与JVM.JDK的区别 从下而上:最上层 JDK -- java development kit (java开发工具包)中间层 JRE -- java runtime enviro ...
- Windchill 设计变更流程卡死查询方法
设计变更流程卡死查询方法 1. 导出设计变更表单查看填写了“需要”和“是”字眼的文本框 2.打开进程管理器显示流程卡死的地方,确定哪里出错导致没法执行下一步 3.打开设计变更流程图,里面可以查看有 ...
- array_splice()函数 ,删除数组中的某个值
array_splice() 这个函数是真的皮,有好多种方法,但是最后还是在PHP官方的文档找到了合理的解释的用法 花了大概半个小时 $arr = array('a','b','c','d'); ar ...
- Lambda01 编程范式、lambda表达式与匿名内部类、函数式接口、lambda表达式的写法
1 编程范式 主要的编程范式有三种:命令式编程,声明式编程和函数式编程. 1.1 命令式编程 关注计算机执行的步骤,就是告诉计算机先做什么后做什么 1.2 声明式编程 表达程序的执行逻辑,就是告诉计算 ...
- 459. Repeated Substring Pattern 判断数组是否由重复单元构成
[抄题]: Given a non-empty string check if it can be constructed by taking a substring of it and append ...
- 674. Longest Continuous Increasing Subsequence最长连续递增子数组
[抄题]: Given an unsorted array of integers, find the length of longest continuous increasing subseque ...
- 权限管理RBAC
四张表: 1.module:id/name //模块 2.action:id /module_id/name //权限 3.user:id/name //用户表 4.group:id/user_id ...
- Usage of the @ (at) sign in ASP.NET
from:http://www.mikesdotnetting.com/article/258/usage-of-the-at-sign-in-asp-net Thursday, January 22 ...
- 浅谈delphi创建Windows服务程序与窗体实现交互
我想实现的功能是创建一个服务程序,然后在服务Start时动态创建一个窗体Form,然后把Form缩小时变成TrayIcon放在Windows托盘上. 我在服务程序的OnStart事件中写到 Start ...
- C# Socket通信改进记录
1. Socket 使用原始Socket,Send和Recv方法 进行发送和消息获取.(另起后台线程 不停获取和发送) public void RecvMsg() { //receive messag ...