2015-09-04 41 views
0

我是初学者,弹出框架并在简单的控制台应用程序上工作,以显示带有坐标(x,y)的三点三角形。当我尝试启动时,它不会从类路径资源解析XML文档。我的应用程序无法从类路径资源中解析spring XML bean定义

This is Drawing.java class 
package org.test; 

import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext;

公共类绘图{

@SuppressWarnings("resource") 
public static void main(String[] args) { 

    ApplicationContext context = new ClassPathXmlApplicationContext("Spring.xml"); 
    Triangle triangle = (Triangle) context.getBean("triangle"); 
    triangle.draw(); 

    } 

} 

这是Triangle.java类

package org.test; 

public class Triangle { 

    private Point pointA; 
    private Point pointB; 
    private Point pointC; 

public Point getPointA() { 
     return pointA; 
    } 
    public void setPointA(Point pointA) { 
     this.pointA = pointA; 
    } 
    public Point getPointB() { 
     return pointB; 
    } 
    public void setPointB(Point pointB) { 
     this.pointB = pointB; 
    } 
    public Point getPointC() { 
     return pointC; 
    } 
    public void setPointC(Point pointC) { 
     this.pointC = pointC; 
    } 

    public void draw(){ 
     System.out.println("PointA = (" +getPointA().getX() + " , " + getPointA().getY() + ")"); 
     System.out.println("PointB = (" +getPointB().getX() + " , " + getPointB().getY() + ")"); 
     System.out.println("PointC = (" +getPointC().getX() + " , " + getPointC().getY() + ")"); 
    } 


} 

这是Point.java类

package org.test; 

public class Point { 

private int x; 
    private int y; 

    public int getX() { 
     return x; 
    } 
    public void setX(int x) { 
     this.x = x; 
    } 
    public int getY() { 
     return y; 
    } 
    public void setY(int y) { 
     this.y = y; 
    } 


} 

这是Spring.xml即XML bean配置文件

<?xml version="1.0" encoding="UTF-8"?> 
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN 2.0//EN" "https://www.springframework/dtd/spring-beans-2.0dtd"> 


<beans> 
    <bean id="triangle" class="org.test.Triangle"> 
    <property name="pointA" ref="ZeroPoint"/> 
    <property name="pointB" ref="OnePoint"/> 
    <property name="pointC" ref="TwoSPoint"/> 
    </bean> 

    <bean id="ZeropPoint" class="org.test.Point"> 
    <property name="x" value="0.0"/> 
    <property name="y" value="0.0"/> 
    </bean> 

    <bean id="OnePoint" class="org.test.Point"> 
    <property name="x" value="1.0"/> 
    <property name="y" value="1.0"/> 
    </bean> 

    <bean id="TwoPoint" class="org.test.Point"> 
    <property name="x" value="2.0"/> 
    <property name="y" value="2.0"/> 
    </bean> 

当我尝试启动这个控制台应用程序,会出现如下错误:

Sep 04, 2015 10:19:56 AM  org.springframework.context.support.ClassPathXmlApplicationContext  prepareRefresh 
INFO: Refreshing org[email protected]1980630: startup date [Fri Sep 04 10:19:56 PKT 2015]; root of context hierarchy 

2015年9月4日上午10时19分56秒org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions

INFO: Loading XML bean definitions from class path resource [Spring.xml] 

Exception in thread "main" org.springframework.beans.factory.BeanDefinitionStoreException: IOException parsing XML document from class path resource [Spring.xml];           nested exception is java.net.UnknownHostException: www.springframework 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:410) 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:336) 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:304) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:181) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:217) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:188) 
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:252) 
at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:127) 
at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:93) 
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:129) 
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:537) 
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:452) 
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) 
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83) 
at org.test.Drawing.main(Drawing.java:11) 

Caused by: java.net.UnknownHostException: www.springframework 
at java.net.AbstractPlainSocketImpl.connect(Unknown Source) 
at java.net.PlainSocketImpl.connect(Unknown Source) 
at java.net.SocksSocketImpl.connect(Unknown Source) 
at java.net.Socket.connect(Unknown Source) 
at sun.security.ssl.SSLSocketImpl.connect(Unknown Source) 
at sun.security.ssl.BaseSSLSocketImpl.connect(Unknown Source) 
at sun.net.NetworkClient.doConnect(Unknown Source) 
at sun.net.www.http.HttpClient.openServer(Unknown Source) 
at sun.net.www.http.HttpClient.openServer(Unknown Source) 
at sun.net.www.protocol.https.HttpsClient.<init>(Unknown Source) 
at sun.net.www.protocol.https.HttpsClient.New(Unknown Source) 
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.getNewHttpClient(Unknown Source) 
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source) 
at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(Unknown Source) 
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) 
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.setupCurrentEntity(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startEntity(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLEntityManager.startDTDEntity(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDTDScannerImpl.setInputSource(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.dispatch(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$DTDDriver.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl$PrologDriver.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(Unknown Source) 
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source) 
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source) 
at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:76) 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadDocument(XmlBeanDefinitionReader.java:429) 
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:391) 
... 14 more 

回答

0

增加了Spring架构和命名空间beans元素,像这样:

<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.xsd"> 

完全删除DOCTYPE

+0

yaaa ....问题已解决..... Thanx很多阿里Dehghani – zeeshan

+0

欢迎您,不要忘记投票并接受答案:) –

+0

春天有非常好的文档,阅读它! –

相关问题