2013-02-05 142 views
0

我想使用wldeploy將我的EAR部署在weblogic服務器中。以下是使用的命令。無法使用wldeploy部署EAR Weblogic

<taskdef name="wldeploy" classname="weblogic.ant.taskdefs.management.WLDeploy"> 
    <classpath> 
    <pathelement location="C:\Oracle\WebLogic\Middleware\wlserver_10.3\server\lib\weblogic.jar"/> 
    </classpath> 
    </taskdef> 

    <!-- Deploying Applications --> 
    <!-- <target name="deploy" depends="module_create"> --> 
    <target name="deploy"> 
    <wldeploy action="deploy" 
       name="${ear.file.name}" 
       source="${ear.install.dir}/${ear.file.name}" 
       user="${wls.username}" 
       nostage="false" 
       password="${wls.password}" 
       verbose="true" debug="true" 
       adminurl="t3://${wls.hostname}:${wls.port}" targets="${server.name}" /> 
    </target> 

在這樣做我得到以下錯誤。

[wldeploy] [BasicOperation.execute():445]:啓動針對應用部署操作,atg_production.ear,關於目標:

[wldeploy] [BasicOperation.execute():447]:atg_production

[wldeploy]啓動任務2:[部署者:149026]在atg_production上部署應用程序atg_production.ear。

[wldeploy]傾倒異常堆棧

[wldeploy]任務2推遲:[部署:149026]上atg_production部署應用atg_production.ear。

[wldeploy]目標狀態:部署在服務器atg_production推遲

[wldeploy] java.rmi.RemoteException異常:[部署:149145]無法聯繫 'atg_production'。 部署被推遲到'atg_production'變爲可用。 * [wldeploy]在weblogic.deploy.service.internal.transport.UnreachableHostException.writeReplace(UnreachableHostException.java:47) [wldeploy]在sun.reflect.NativeMethodAccessorImpl.invoke0(本機方法) [wldeploy]在太陽.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) [wldeploy] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) [wldeploy] at java.lang.reflect.Method.invoke(Method.java :597) [wldeploy]在java.io.ObjectStreamClass.invokeWriteReplace(ObjectStreamClass.java:1032) [wldeploy]在java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1107) *

不知道爲什麼我有RMI異常。請問任何人可以說出這個例外的原因是什麼?

回答

1

{wls.hostname}的值是什麼。看起來這是atg_production。檢查您是否可以從試圖運行此wldeploy的機器訪問atg_production。根據例外情況,無論是無法訪問機器(無連接性,防火牆問題等)或atg_production上的weblogic關閉。

0

首先,您的管理服務器正在運行。 $ {server.name}的價值是什麼?基於輸出,它是atg_production。請確保您部署的服務器的服務器名稱爲「atg_production」。