我已经安装了&配置以下项目:
将wlapp文件上传到mobilefirst控制台时,如果耗时超过60秒,则会抛出错误:
连接失败。检查服务器日志以获取详细信息。
这是我的server.xml:
<server description="new server">
<featureManager>
<feature>jsp-2.2</feature>
<feature>jndi-1.0</feature>
<feature>jdbc-4.0</feature>
<feature>servlet-3.0</feature>
<feature>ssl-1.0</feature>
<feature>localConnector-1.0</feature>
<feature>restConnector-1.0</feature>
<feature>appSecurity-1.0</feature>
</featureManager>
<httpSession cloneId="server1" />
<httpEndpoint id="defaultHttpEndpoint"
host="*"
httpPort="9080"
httpsPort="9443" >
<tcpOptions inactivityTimeout="10m" soReuseAddr="true"/>
<httpOptions readTimeout="10m" writeTimeout="10m" removeServerHeader="true" />
</httpEndpoint>
<administrator-role>
<user>WorklightRESTUser</user>
</administrator-role>
<basicRegistry>
<user name="WorklightRESTUser" password="yfcXTcXUEcTV"/>
<user name="admin" password="admin"/>
</basicRegistry>
<webContainer invokeFlushAfterService="false" deferServletLoad="false"/>
<jndiEntry jndiName="ibm.worklight.admin.endpoint" value="http://IP:PORT/wladmin" />
<jndiEntry jndiName="ibm.worklight.admin.proxy.protocol" value="http" />
<jndiEntry jndiName="ibm.worklight.admin.proxy.host" value="<IP>" />
<jndiEntry jndiName="ibm.worklight.admin.proxy.port" value="<PORT>"/>
<application id="HelloWorld" name="HelloWorld" location="HelloWorld.war" type="war">
<classloader delegation="parentLast">
<privateLibrary id="worklightlib_HelloWorld">
<fileset dir="${shared.resource.dir}/HelloWorld/lib" includes="worklight-jee-library.jar"/>
<fileset dir="${wlp.install.dir}/lib" includes="com.ibm.ws.crypto.passwordutil_*.jar"/>
</privateLibrary>
</classloader>
</application>
<jndiEntry jndiName="HelloWorld/publicWorkLightProtocol" value='"http"'/>
<jndiEntry jndiName="HelloWorld/publicWorkLightPort" value='"9080"'/>
<jndiEntry jndiName="HelloWorld/reports.exportRawData" value='"false"'/>
<library id="HelloWorld/DB2Lib">
<fileset dir="${shared.resource.dir}/HelloWorld/db2" includes="db2jcc4.jar"/>
</library>
<dataSource jndiName="HelloWorld/jdbc/WorklightDS" transactional="false">
<jdbcDriver libraryRef="HelloWorld/DB2Lib"/>
<properties.db2.jcc databaseName="MF_HELLO" serverName="<IP>" portNumber="<PORT>" user="<USER>" password="<PWD>" currentSchema="WRKLGHT"/>
</dataSource>
<keyStore id="defaultKeyStore" password="worklight"/>
<jndiEntry jndiName="ibm.worklight.admin.jmx.host" value='"localhost"'/>
<jndiEntry jndiName="ibm.worklight.admin.jmx.port" value='"9443"'/>
<jndiEntry jndiName="ibm.worklight.admin.jmx.user" value='"WorklightRESTUser"'/>
<jndiEntry jndiName="ibm.worklight.admin.jmx.pwd" value='"yfcXTcXUEcTV"'/>
<jndiEntry jndiName="ibm.worklight.topology.platform" value='"Liberty"'/>
<jndiEntry jndiName="ibm.worklight.topology.clustermode" value='"Standalone"'/>
<executor id="default" name="LargeThreadPool"
coreThreads="200" maxThreads="400" keepAlive="60s"
stealPolicy="STRICT" rejectedWorkPolicy="CALLER_RUNS"/>
<application id="wladmin" name="wladmin" location="worklightadmin.war" type="war">
<application-bnd>
<security-role name="worklightadmin">
<user name="admin"/>
</security-role>
<security-role name="worklightdeployer">
</security-role>
<security-role name="worklightmonitor">
</security-role>
<security-role name="worklightoperator">
</security-role>
</application-bnd>
<classloader delegation="parentLast">
<commonLibrary id="worklightlib_wladmin">
<fileset dir="${wlp.install.dir}/lib" includes="com.ibm.ws.crypto.passwordutil_*.jar"/>
</commonLibrary>
</classloader>
</application>
<library id="wladmin/DB2Lib">
<fileset dir="${shared.resource.dir}/wladmin/db2" includes="db2jcc4.jar"/>
</library>
<dataSource jndiName="wladmin/jdbc/WorklightAdminDS" transactional="false">
<jdbcDriver libraryRef="wladmin/DB2Lib"/>
<properties.db2.jcc databaseName="WRKLGHT" serverName="IP" portNumber="PORT" user="USER" password="PWD" currentSchema="WLADMIN"/>
</dataSource>
<application id="worklightconsole" name="worklightconsole" location="worklightconsole.war" type="war">
<application-bnd>
<security-role name="worklightadmin">
<user name="admin"/>
</security-role>
<security-role name="worklightdeployer">
</security-role>
<security-role name="worklightmonitor">
</security-role>
<security-role name="worklightoperator">
</security-role>
</application-bnd>
<classloader delegation="parentLast"/>
</application>
<jndiEntry jndiName="worklightconsole/ibm.worklight.admin.endpoint" value='"*://*:*/wladmin"'/>
</server>
在服务器的messages.log中,我收到此错误:
com.ibm.worklight.management.ui.servlet.ServiceProxy
Throwable Connection已关闭:读取失败。可能的流结束 遇到。同时将请求重定向到 http://localhost:9080/wladmin/management-apis/1.0/runtimes/HelloWorld/applications?async=true
任何帮助都将受到高度赞赏。
答案 0 :(得分:2)
2016-03-23之后发布的修正应解决问题。 http://www-01.ibm.com/support/docview.wss?uid=swg1PI59605
答案 1 :(得分:0)
您的Liberty Profile版本是8.5.5.0。不支持此版本。最小版本为8.5.5.3(参见http://www-969.ibm.com/software/reports/compatibility/clarity-reports/report/html/prereqsForProduct?deliverableId=46183B706BEA11E48038141DE954FC88,选项卡支持的软件)。它可以解释这种问题,因为这个Liberty版本有关于jndi管理,REST连接的缺陷..