2013-06-23 2 views
-2

Я не могу использовать xPath для запроса моего xml-файла. Я не знаю, где ошибка и это моя схемаНевозможно использовать xml-файл для автоматического генерации из сортировки

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

<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
targetNamespace="http://xml.netbeans.org/schema/Manufacturers" 
xmlns="http://xml.netbeans.org/schema/Manufacturers" 
elementFormDefault="qualified"> 
<xsd:element name="ManufacturerList"> 
    <xsd:complexType> 
     <xsd:sequence> 
      <xsd:element name="Manufacturer" type="manufacturerType" maxOccurs="unbounded" /> 
     </xsd:sequence> 
    </xsd:complexType> 
</xsd:element> 
<xsd:complexType name="manufacturerType"> 
    <xsd:sequence> 
     <xsd:element name="ManufacturersID" type="xsd:positiveInteger"/> 
     <xsd:element name="ManufacturersName" type="xsd:string"/> 
    </xsd:sequence> 
</xsd:complexType> 

это мой файл XML после использования Маршалла для создания файла XML

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<ManufacturerList xmlns="http://xml.netbeans.org/schema/Manufacturers"> 
<Manufacturer> 
    <ManufacturersID>1</ManufacturersID> 
    <ManufacturersName>SamSung</ManufacturersName> 
</Manufacturer> 
<Manufacturer> 
    <ManufacturersID>2</ManufacturersID> 
    <ManufacturersName>Apple</ManufacturersName> 
</Manufacturer> 
<Manufacturer> 
    <ManufacturersID>3</ManufacturersID> 
    <ManufacturersName>Nokia</ManufacturersName> 
</Manufacturer> 

и это мой файл xsl

<?xml version="1.0" encoding="UTF-8"?> 
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
xmlns:manu="http://xml.netbeans.org/schema/Manufacturers" 
exclude-result-prefixes="manu" version="1.0"> 
<xsl:output method="html"/> 
<xsl:template match="/"> 
    <html> 
     <body> 
      <xsl:apply-templates/> 
     </body> 
    </html> 
</xsl:template> 
<xsl:template match="/"> 
    <xsl:for-each select="/manu:Manufacturer"> 
     <li> 
      <a href="#"> 
       <xsl:value-of select="manu:ManufacturersName"/> 
      </a> 
     </li> 
    </xsl:for-each> 
</xsl:template> 
</xsl:stylesheet> 

в файле jsp при запуске веб-страницы, я не могу получить результат, который хочу. Файл xsl не может прочитать файл xml с запросом xpath

ответ

0

Вы должны зарегистрировать пространство имен. Посмотрите на: php manual

+0

как я могу зарегистрировать пространство имен? скажите, пожалуйста, и я не могу прочитать код php – VuongNQ

+0

На каком языке вы используете для выполнения xpath? Я предположил php из-за тега ** domxpath ** (который является PAP API.) –

+0

спасибо за помощь Я решил это самостоятельно. Я забыл пространство имен в запросе xpath после поиска, проблема была решена – VuongNQ