2011-07-31 6 views
0

스프링 구성 파일 처리시이 동작을 발견했습니다.
내 config 파일에서이 오류가 있습니다
스프링 구성 파일 유효성 확인

  • 하나의 구문을 (물론 형식) 오류는 mispelled 닫는 태그가
  • 는 "네임 스페이스"(검증) ("HTML"태그로 tryed)라고 는 XML이 유효하지 않기 때문에

오류 (보안 네임 스페이스에 대한 잘못된 경로를 tryed)는, 내가 런타임 environement가 반환 된 첫 번째 오류는 유효성 검사 오류라고 생각했다.

사실이 아닙니다 (스프링 3.0.2와 보안 3.0.2).

그것은 첫째 반환 :

일치하는 와일드 카드가 엄격 있지만 선언은 다음 요소 'HTTP'

내가이 첫 번째 오류를 고정 할 때, 내가 얻을 찾을 수 없습니다 (내가)로서 제 기대되었다

요소 유형 "HTTP"는 매칭 종료 태그 ","

0으로 종료해야

구문 확인에 대해 말할 수있는 것은 무엇입니까? 신택스 검사 과정은 사전 단계로 수행되지는 않았지만 검사와 검증은 "인터레이스 된"것으로 보인다. 모든 태그가 먼저 확인 된 후 유효성이 검사됩니다. 맞아? 구현에 종속적입니까?

PS :

<?xml version="1.0" encoding="UTF-8"?> 
<beans:beans xmlns="http://www.springframework.org/schema/security" 
    xmlns:beans="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-3.0.xsd 
         http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.0.xsdFIRSTERROR"> 

<http> 
    <form-login /> 
    <http-basic /> 
    <logout /> 
    <intercept-url pattern="/**" access="ROLE_USER" /> 
</SECONDERRORhttp> 

<authentication-manager> 
    <authentication-provider> 
     <user-service> 
      <user name="myuser" password="mysecret" authorities="ROLE_USER" /> 
     </user-service> 
    </authentication-provider> 
</authentication-manager> 

</beans:beans> 

답변

0

당신은 바로 "구문 검사"및 검증하지 두 개의 별도의 단계가 있다는 것 : 내 결함 XML은 (스키마 위치 및 HTTP 닫는 태그에있는 두 개의 오류를 발견) . Spring은 효율성을 위해 스트리밍 XML 파서를 사용한다. 이러한 종류의 구문 분석기는 일반적으로 오류가 이전 또는 이후가 아닌 잘못된 요소에 도달 할 때 오류를 식별합니다.