2013-04-24 65 views
9

Eclipseには多くのXMLファイルを持つPHPプロジェクトがあります。今、私のすべてのXMLファイルは、次のエラーメッセージで、検証を失敗している:XML/XSD publicIdとsystemIdの間に空白が必要です

White spaces are required between publicId and systemId 

私は周りに検索した、とのpublicIdおよびシステムIDは、DOCTYPEで始まるXMLファイルに関連すると思われます。私はしません。もう1つのSO postingは、EclipseのXMLカタログにXSDを追加するよう指示されていますが、違いはありません。

つのサンプルXMLは次のとおりです:

<?xml version="1.0" encoding="UTF-8"?> 

<doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping 
          http://www.doctrine-project.org/schemas/orm/doctrine-mapping.xsd"> 

    <entity name="Doctrine\Tests\Models\CMS\CmsAddress" table="cms_users"> 

     <named-native-queries> 
      <named-native-query name="find-all" result-set-mapping="mapping-find-all"> 
       <query>SELECT id, country, city FROM cms_addresses</query> 
      </named-native-query> 

      <named-native-query name="find-by-id" result-class="CmsAddress"> 
       <query>SELECT * FROM cms_addresses WHERE id = ?</query> 
      </named-native-query> 

      <named-native-query name="count" result-set-mapping="mapping-count"> 
       <query>SELECT COUNT(*) AS count FROM cms_addresses</query> 
      </named-native-query> 
     </named-native-queries> 

     <sql-result-set-mappings> 
      <sql-result-set-mapping name="mapping-find-all"> 
       <entity-result entity-class="CmsAddress"> 
        <field-result name="id" column="id"/> 
        <field-result name="city" column="city"/> 
        <field-result name="country" column="country"/> 
       </entity-result> 
      </sql-result-set-mapping> 

      <sql-result-set-mapping name="mapping-without-fields"> 
       <entity-result entity-class="CmsAddress"/> 
      </sql-result-set-mapping> 

      <sql-result-set-mapping name="mapping-count"> 
       <column-result name="count"/> 
      </sql-result-set-mapping> 
     </sql-result-set-mappings> 

     <id name="id" type="integer" column="id"> 
      <generator strategy="AUTO"/> 
     </id> 

     <field name="country" column="country" type="string" length="50"/> 
     <field name="city" column="city" type="string" length="50"/> 
     <field name="zip" column="zip" type="string" length="50"/> 

     <one-to-one field="user" target-entity="CmsUser" inversed-by="address"> 
      <join-column referenced-column-name="id" /> 
     </one-to-one> 

    </entity> 
</doctrine-mapping> 

私は次の試してみ何で困惑ビットです。私はXML検証を無効にすることができますが、Eclipseでエラーを解決するためにそのようなことをするのは嫌です。何か違いがあれば、Eclipse 3.7をPDTで使用しています。失敗したXMLファイルはすべてライブラリの一部ですので、問題を解決するために修正/修正が必要なEclipse構成の詳細である必要がありますが、何もわかりません。

XMLファイルの検証を試みることができますか?

+1

ここで間違いはありませんが、あなたが私たちに示したXMLファイルとは関係ありません。 –

+0

合意。私が言ったように、私はそれがEclipse構成上の問題であると確信していますが、私は何が分かりません。私はそれをせずにXMLファイルb/cを表示しています、最初の質問(正しくはそうです)は、XMLファイルのように見えます。ベンダーが作成したXMLファイル(およびその中のいくつか)は、XMLファイルがすべて有効であると確信しています。 –

+0

これは妥当性の問題ではなく、整形式の問題であることに注意してください。あなたの靴では、私が見ているエラーメッセージまでドキュメントを検証する要求からシステムが触れるかもしれないすべてのXMLドキュメントを識別できるかどうかを知ることができます。 (実際の例が典型的なものであれば問題はありません)、スキーマ(スキーマ)を定義しているスキーマ文書、Eclipse用の設定ファイル、Eclipse内の検証モジュール... –

答えて

12

基本的には、順序は次のようにする必要があります - プロパティとそれに続くproperty.xsd

xsi:schemaLocation=" 
     http://www.springframework.org/schema/beans 
     http://www.springframework.org/schema/beans/spring-beans.xsd 
     http://www.springframework.org/schema/security 
     http://www.springframework.org/schema/security/spring-security-3.2.xsd 
     http://www.springframework.org/schema/context 
     http://www.springframework.org/schema/context/spring-context.xsd 
     http://www.springframework.org/schema/mvc 
     http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd"> 
+0

この回答は受け付けています... –

+0

私のために働いた。ありがとう!! – Akash5288

+0

多くの類似の質問がありますが、この回答は私の問題を解決しました。ありがとう。 – pinkpanther

関連する問題