2013-03-22 3 views
0

웹 사이트에서 J2EP (1.0 안정 버전)를 역방향 프록시 서버로 사용하고 있습니다. 먼저 Apache Tomcat을 설치하여 프로젝트를 배포 한 다음 역방향 프록시를 구성했습니다. 또한 서버는 "isRewriting = true"를 지원하지 않으므로 "RoundRobinCluster"를 사용해야했습니다.J2EP에서 역방향 프록시를 사용하려고하면 "NullPointerException"이 발생합니다.

예 : 나는 그런 표현을 사용하는 경우,

"<server className="net.sf.j2ep.servers.BaseServer" 
    domainName="www.nytimes.com" 
    path="/test"> 
    <rule className="net.sf.j2ep.rules.AcceptEverythingRule" /> 
</server>" 

하고 이동 : 어떤 페이지가 나타납니다이는 "RoundRobinCluster"를 사용하는 날 리드 http://localhost:8080/test

; 에

<server className="net.sf.j2ep.servers.RoundRobinCluster"> 
    <server 
     domainName="www.nytimes.com" 
     path="/test" 
    /> 
     <rule className="net.sf.j2ep.rules.AcceptEverythingRule" /> 
</server> 

및 이동 : http://localhost:8080/test

나는 그런 오류와 얼굴이 시간;

java.lang.NullPointerException이

net.sf.j2ep.ServerChain.evaluate (ServerChain.java:104) net.sf.j2ep.RewriteFilter.doFilter (RewriteFilter.java:75)

나는 안정적인 버전에서 그런 오류를 기대하지 않았다. 또는 나는 뭔가를 놓친 것일 수도있다. 어떤 도움이라도 좋을 것이다.

감사합니다.

답변

0

죄송합니다. j2ep을 (를) 이전에 만나지 않았습니다. 무슨 일이 있었는지 알아 내기 위해 나는 sourceforge.org에 SVN을 보았다.

문제 코드는 여기에 있습니다 :

102  while (itr.hasNext() && !currentMatches) { 
103  currentContainer = (ServerContainer) itr.next(); 
104  currentMatches = currentContainer.getRule().matches(request); 
105  } 

.

Rule이 (가) 생성되지 않았으며 잘못된 방법으로 선언되었을 수 있습니다. 규칙 선언을 구체화하거나 (철자법, 속성 등을 확인하십시오) 로그에서 다른 오류를 찾으십시오.

관련 문제