2012-07-09 42 views
2

我正在创建一个通过xml与服务器通信的wesite。在我的本地主机中,一切正常。虽然当上载我的网站的服务器,而不是这种XML格式:XML格式问题

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
    <quser xmlns="http://www..." xmlns:atom="http://www.w3.org/2005/atom">    
    <username>name</username> 
</quser> 

我; M采取这一个:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
    < :quser xmlns: ="http://www2...." xmlns:atom="http://www.w3.org/2005/atom"> 
    < :username>readered</ :username> 
    <:quser> 

我在我的模型声明如下包info.class

@javax.xml.bind.annotation.XmlSchema (
    namespace="http://www..", 
    elementFormDefault=XmlNsForm.QUALIFIED, 
    xmlns = { 
    @javax.xml.bind.annotation.XmlNs(prefix=" ", namespaceURI="http://www.."), 
    @javax.xml.bind.annotation.XmlNs(prefix="atom" ,namespaceURI="http://www.w3.org/2005/atom") 
    } 
) 

    package model; 
    import javax.xml.bind.annotation.*; 

正如我告诉你在我的本地主机工作得很好,但在服务器上,即使我改变前缀(仅用于测试,我设置它的前缀=“XS”)不采用这些更改。只有在我的本地主机采用它。它非常有线,如果你认为我在loclhost中所做的更改,当我在服务器上调试和上载代码时应该包含它们。

此外,我意识到我忘记了一些JAXB库到WEB-INF中。只是为了测试我插入我的库和主程序库。然后,我采取了和我的本地主机相同的XML格式在服务器。所以我决定从这两个地方删除这些库。在我的localhost之后,一切都可以正常工作,但是不在服务器中。如果任何人面对或知道关于这个问题的某些东西给我一些指示。

回答

1

尝试在前缀声明去除空间:

@javax.xml.bind.annotation.XmlNs(prefix="", namespaceURI="http://www..ckp"), 

而不是

@javax.xml.bind.annotation.XmlNs(prefix=" ", namespaceURI="http://www..ckp"), 
+0

我尝试this.In我的本地工作,但不是在服务器上。 – 2012-07-09 18:17:46

+0

@NickRobertson - 您使用的服务器和版本是? – 2012-07-09 18:19:03

+0

我的本地主机上的apache tomcat 7,服务器上的apache tomcat 6 – 2012-07-09 18:33:50