2011-03-02 74 views
1

我们正在从BEA Weblogic和ALSB升级到Oracle Weblogic和OSB 10.3.4。其中一个失败的事情是我们为WAR编译jsp页面的蚂蚁任务。JSP编译和Weblogic 10.3.4

这是现在失败的Ant构建文件的一部分:

<!-- Compile the JSP files --> 
     <path id="workshop.classpath"> 
      <fileset dir="${env.WL_HOME}/workshop/lib"> 
       <include name="*.jar"/> 
      </fileset> 
      <pathelement location="${env.ORACLE_HOME}/tools/eclipse_pkgs/1.1/pkgs/eclipse/plugins/com.bea.workshop.wls.ant_1.0.20.200802230117/workshop-wls-antlib.jar"/> 
     </path> 
     <taskdef 
name="jspc" 
classname="com.bea.workshop.wls.antlib.tasks.JspcTask" classpathref="workshop.classpath"/> 
     <path id="jspc.classpath"> 
      <path refid="java.classpath"/> 
      <pathelement location="${env.ORACLE_HOME}/jdk150_11/lib/tools.jar" /> 
      <pathelement location="${env.WL_HOME}/server/lib/weblogic.jar" /> 
     </path> 
     <jspc source="@{war.staging.dir}" classpathref="jspc.classpath" failonerror="true" /> 

它不能解决与JspcTask的jar文件,因为车间不存在10.3.4。所以问题是,这个ant脚本应该如何更改为在10.3.4下工作?

回答

0

taskdefclassname与WLS 10.3.3

<taskdef name="jspc" 
classname="weblogic.ant.taskdefs.j2ee.Jspc" classpath="{ORACLE_MIDDLEWARE_HOME}\wlserver_10.3\server\lib\weblogic.jar"> 
</taskdef> 

检查weblogic.jar使用WinZip/WinRAR的,看是否存在10.3.4以上classname下面的作品,它应该是罚款。

更新:

你得到空指针,因为jspc不允许在source属性的目录。它应该是srcdiras per the docs,实际上我根本没有看到source属性。

jspc任务已过时,所以我认为这是更好地使用weblogic.appc像下面

<target name="compileapp"> 
<java classname="weblogic.appc" fork="yes"> 
<arg line="-webapp ${src.gui}" /> 
<arg value="-compiler javac" /> 
<arg line="-classpath D:\Oracle\Middleware_Jdev11_1_1_4\wlserver_10.3\server\lib\weblogic.jar" /> 
<arg value="-depend" /> 
<arg value="-nowarn" /> 
</java> 
</target> 

选择要from this list的属性,我还没有尝试过这个自己呢。

+0

好的,谢谢!它现在看起来像这样:'code' 'code'我现在得到一个null指针异常与jspc调用一致。我是否错过了一些论据? – user432291 2011-03-02 15:17:09

+0

对不起,但我无法在评论中获得代码格式化工作。这里是单独调用jspc的行:'code' 'code' – user432291 2011-03-02 15:19:53

+0

@ user432291:是的,你的NullPointer是因为' jspc'确实不允许'src'属性中的目录。 – JoseK 2011-03-03 04:44:44