For a components.xml file which contains custom components which define their namespace using the @Namespace annotation, JBDS shows XML Problems:
src/main/java/org/jboss/seam/example/quartz/package-info.java
@Namespace(value="http://jboss.org/schema/seam/examples/quartz") package org.jboss.seam.example.quartz; import org.jboss.seam.annotations.*;
PaymentHome.java
@Name("paymentHome") public class PaymentHome extends EntityHome<Payment> { ...
components-test.xml
<?xml version="1.0" encoding="UTF-8"?> <components xmlns="http://jboss.org/schema/seam/components" xmlns:pay="http://jboss.org/schema/seam/examples/quartz" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation= "http://jboss.org/schema/seam/components http://jboss.org/schema/seam/components-2.3.xsd"> <pay:payment-home name="paymentHome" new-instance="#{newPayment}" created-message="Created a new payment to #{newPayment.payee}" /> ... </components>
JBDS shows:
cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element 'pay:payment-home'. components-test.xml /quartz-ejb/src/test/resources line 18 XML Problem
This does not happen when the schemaLocation of components is not included.