2011-04-05 1 views
3

jsp 파일 안에 다음과 같은 JS 코드가 있다고 가정합니다.값이 null 인 변수의 경우 빈 문자열 ""이 아닌 JSP 파일에 "null"을 인쇄하도록 Weblogic에 강제 설정 하시겠습니까?

 
 
<% 
String test = null; 
%> 

var test = <%=test%>; 
 

Tomcat 및 Websphere에서 결과 JS는 다음과 같습니다.

 
 
var test = null; 
 

그러나 Weblogic에서는 다음과 같습니다.

 
 
var test = ; 
 

따라서 weblogic에는 구문 오류가 있습니다.

조건을 사용하여 해결하는 것이 매우 쉬운 문제임을 알고 있습니다. somehthing if line if test == null print "null"그렇지 않으면 print test. 그러나, 내가 찾고있는이 동작을 변경할 수있는 일종의 서버 설정입니다.

나는 코드를 작성 했으므로 자바 스크립트에 들어갈 변수가 null 일 수있는 모든 장소를 검색하고 싶지는 않습니다.

고마워, 그레이

+0

정확한 WLS 버전을 사용하고 있습니다 ... 10.3.1, 10.3.2 등 –

답변

0

웹 로직 테스트는 JSP 식의 널 (null)을 위해, 당신은 수행하여이를 방지 할 수있는 경우는 :

<% 
String test = null; 
%> 

var test = <%= String.valueOf(test) %>; 

var test = null;를 인쇄해야합니다.

+1

웹 로직 설정을 찾고 있습니다. 다양한 Java 트릭을 사용하여 주위를 둘러 볼 수 있다는 것을 알고 있습니다. 나는 코드 내의 모든 곳을 찾기 위해 어디서나 검색하지 않는다. 나는 <%=...%>에 null이있을 수도있다. –

+0

서버에서 지원하기 위해 많은 코드가 변경된 것처럼 보입니다. –

+0

이 솔루션은 효과가 있습니다. 나는 다른 어떤 일도 결코 할 수 없었습니다. –

2

당신은 서버 전체 설정을 통해이를 제어 할 수 있을지는 모르겠지만, 당신이 weblogic.xml의 구성 파일의 설정을 통해 전쟁 전체를 제어 할 수는 :

<?xml version="1.0" encoding="UTF-8"?> 
<wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/ejb-jar_3_0.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd"> 
    ... 
    <wls:jsp-descriptor> 
     <wls:print-nulls>true</wls:print-nulls> 
    </wls:jsp-descriptor> 
</wls:weblogic-web-app> 

이 갈 필요 web.xml 파일 옆의 WebContent/WEB-INF 디렉토리에 있습니다.

기본값은 true이므로 null이 표시되지 않는 것은 이상한 점에 유의하십시오. 아마도 이것은 이미 다른 곳에서는 거짓으로 설정되어있을 것입니다. weblogic.xml에서이 설정을 true로 설정해보십시오. 다른 설정보다 우선 적용됩니다.

Eclipse에서 WLS에 배포하기 위해 Eclipse 용 Oracle Enterprise Pack이 설치되어있는 경우 weblogic.xml 파일 편집에 도움이되는 훌륭한 편집기가 제공됩니다. 컨텐츠 개요의 JSP -> 출력 옵션에서이 설정을 찾으십시오.

관련 문제