2012-11-05 4 views
0

Java webapp의 일부로 일부 URI에 접두어를 추가해야합니다.Javascript를 포함 할 수있는 URI를 구문 분석/추출

"controller.jsp?page=list" 

된다 ...

<a href="${legacyBaseUrl}/controller.jsp?page=list">...</a> 

쉽습니다. 문제는 데이터베이스의 일부 URI가 자바 스크립트를 포함하는 경우 발생합니다. 나는이 할 수 있도록하고 싶습니다 무엇

"javascript:window.open('controller.jsp?page=popup')" 

... 더 나은 아직

<a href="javascript:window.open('${legacyBaseUrl}/controller.jsp?page=popup')">...</a> 

또는 ...

<a href="${legacyBaseUrl}/controller.jsp?page=popup" target="_blank">...</a> 

나는 단지와 떨어져 잘라 수있어 정규 표현식을 사용하지만 데이터를 살생 한 적이 없으며 데이터베이스에 자바 스크립트가있을 수 있으므로이 문제를 간단한 문자열 조작 문제로 취급하는 것에주의해야합니다.

Java에서 Javascript를 올바르게 구문 분석하고 window.open 또는 다른 JS 함수에 대한 호출을 인식/추출하는 간단한 방법이 있습니까?

저는 Rhino 나 javax.script와 같은 것들을 잠시 살펴 봤지만 조금 손실되었습니다. 이것이 나의 필요에 맞는 것인가? 정규식이 실제로 충분할까요? 어떤 제안?

답변

관련 문제