在MyEclipse中编辑XML没有智能提示的有关问题

在MyEclipse中编辑XML没有智能提示的问题

在Struts, Spring, Hibernate的配置文件的时候,有时候XML编辑器的智能提示并不好用。造成这个问题的主要原因是,编辑器是从XML头部的网络地址来读取DTD或者XSD文件,比如头部命名空间的http://www.springframework.org/schema/beans/spring-beans-2.5.xsd  这些文件是用来说明XML文件格式的,解析了这些文件,编辑器才能给出正确的提示。当网络状况不好或者根本没有联网的时候,是不会有正确的智能提示的。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">

  <bean id="u" class="com.dao.impl.UserDAOImpl">
  </bean>
	
  <bean id="userService" class="com.service.UserService">
  	<!-- 
  	<property name="userDAO" ref="u" />
  	 -->
  	 <constructor-arg>
  	 	<ref bean="u"/>
  	 </constructor-arg>
  </bean>
  
</beans>
我们可以利用MyEclipse的相应功能完成映射,这样,在即使不能联网的情况下,也能给出智能提示。

引入XML文件相应的DTD或者XSD格式,在myeclipse的window菜单中选择preference,然后选择XML Catalog,在struts的jar包中有struts的XML文件相应的dtd格式文件,在这里需要引入,然后在struts中书写XML标签时就会有相应的提示。在没有引入之前都是去url地址找dtd文件,会很慢或者根本不会给提示,引入dtd文件之后,就会形成网络地址和本地文件的映射,会优先从本地文件来寻找相应的dtd格式文件。

在MyEclipse中编辑XML没有智能提示的有关问题

在MyEclipse中编辑XML没有智能提示的有关问题

在MyEclipse中编辑XML没有智能提示的有关问题

这里要填写的本地XSD或者DTD文件的Location,一般都会在插件相应的包中找到。Spring是在dist\resources目录中找到这个文件。