我在MobileFirst V7上开发了一个应用程序。它调用HTTP适配器并返回数据。它可以在我的Eclipse上预览运行。我将它部署到MobileFirst服务器(使用WAS Liberty Profile)并在预览中运行它。当我调用适配器时,它会引发一个错误,它登录messages.log
是:
[4/28/15 23:34:16:681 EDT] 00000213 org.apache.wink.server.internal.RequestProcessor
我在调用处理程序链期间发生了以下错误:
WebApplicationException(404 - Not Found),在处理发送到http://127.0.0.1:9080/TestApp/authorization/v1/clients/preview的POST请求时发出消息'null'
这是我的server.xml
<server description="new server">
<featureManager>
<feature>jsp-2.2</feature>
<feature>ssl-1.0</feature>
<feature>servlet-3.0</feature>
<feature>jdbc-4.0</feature>
<feature>appSecurity-1.0</feature>
<feature>jndi-1.0</feature>
<feature>ssl-1.0</feature>
<feature>servlet-3.0</feature>
<feature>jdbc-4.0</feature>
<feature>jndi-1.0</feature>
<feature>restConnector-1.0</feature>
<feature>appSecurity-1.0</feature>
<feature>ssl-1.0</feature>
<feature>servlet-3.0</feature>
<feature>jdbc-4.0</feature>
<feature>jndi-1.0</feature>
</featureManager>
<httpEndpoint id="defaultHttpEndpoint"
host="*"
httpPort="9080"
httpsPort="9443" >
<tcpOptions soReuseAddr="true"/>
</httpEndpoint>
<basicRegistry>
<user name="WorklightRESTUser" password="Bc7CGrb9DCuF"/>
<user name="admin" password="admin"/>
<user name="demo" password="demo"/>
<user name="appcenteradmin" password="admin"/>
<group name="appcentergroup">
<member name="demo"/>
<member name="appcenteradmin"/>
</group>
</basicRegistry>
<application id="appcenterconsole" name="appcenterconsole" location="appcenterconsole.war" type="war">
<application-bnd>
<security-role name="appcenteradmin">
<group name="appcentergroup"/>
</security-role>
</application-bnd>
</application>
<application id="applicationcenter" name="applicationcenter" location="applicationcenter.war" type="war">
<application-bnd>
<security-role name="appcenteradmin">
<group name="appcentergroup"/>
</security-role>
</application-bnd>
<classloader delegation="parentLast">
<commonLibrary>
<fileset dir="${wlp.install.dir}/lib" includes="com.ibm.ws.crypto.passwordutil_1.0.1.jar"/>
</commonLibrary>
</classloader>
</application>
<jndiEntry jndiName="android.aapt.dir" value='"/opt/IBM/MobileFirst_Platform_Server/ApplicationCenter/tools/android-sdk"'/>
<library id="DB2Lib">
<fileset dir="${shared.resource.dir}/db2" includes="*.jar"/>
</library>
<dataSource jndiName="jdbc/AppCenterDS" transactional="false">
<jdbcDriver libraryRef="DB2Lib"/>
<properties.db2.jcc databaseName="APPCNTR" serverName="127.0.0.1" portNumber="50001" user="db2inst1" password="{xor}Lz4sLChvLTs="/>
</dataSource>
<keyStore id="defaultKeyStore" password="worklight"/>
<administrator-role>
<user>WorklightRESTUser</user>
</administrator-role>
<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="Bc7CGrb9DCuF"/>
<jndiEntry jndiName="ibm.worklight.topology.platform" value="Liberty"/>
<jndiEntry jndiName="ibm.worklight.topology.clustermode" value="Standalone"/>
<webContainer invokeFlushAfterService="false" deferServletLoad="false"/>
<executor id="default" name="LargeThreadPool"
coreThreads="200" maxThreads="400" keepAlive="60s"
stealPolicy="STRICT" rejectedWorkPolicy="CALLER_RUNS"/>
<application id="worklightadmin" name="worklightadmin" 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_worklightadmin">
<fileset dir="${wlp.install.dir}/lib" includes="com.ibm.ws.crypto.passwordutil_1.0.1.jar"/>
</commonLibrary>
</classloader>
</application>
<library id="worklightadmin/DB2Lib">
<fileset dir="${shared.resource.dir}/worklightadmin/db2" includes="db2jcc4.jar,db2jcc_license_cu.jar"/>
</library>
<dataSource jndiName="worklightadmin/jdbc/WorklightAdminDS" transactional="false">
<jdbcDriver libraryRef="worklightadmin/DB2Lib"/>
<properties.db2.jcc databaseName="WLADMIN" serverName="127.0.0.1" portNumber="50001" user="db2inst1" password="{xor}Lz4sLChvLTs=" currentSchema="WLADMSC"/>
</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>
</application>
<jndiEntry jndiName="worklightconsole/ibm.worklight.admin.endpoint" value='"*://*:*/worklightadmin"'/>
<application id="TestApp" name="TestApp" location="TestApp.war" type="war">
<classloader delegation="parentLast">
<privateLibrary id="worklightlib_TestApp">
<fileset dir="${shared.resource.dir}/TestApp/lib" includes="worklight-jee-library.jar"/>
<fileset dir="${wlp.install.dir}/lib" includes="com.ibm.ws.crypto.passwordutil_1.0.1.jar"/>
</privateLibrary>
</classloader>
</application>
<jndiEntry jndiName="TestApp/publicWorkLightProtocol" value='"http"'/>
<jndiEntry jndiName="TestApp/publicWorkLightPort" value='"9080"'/>
<library id="TestApp/DB2Lib">
<fileset dir="${shared.resource.dir}/TestApp/db2" includes="*.jar"/>
</library>
<dataSource jndiName="TestApp/jdbc/WorklightDS" transactional="false">
<jdbcDriver libraryRef="TestApp/DB2Lib"/>
<properties.db2.jcc databaseName="WRKLGHT" serverName="127.0.0.1" portNumber="50001" user="db2inst1" password="{xor}Lz4sLChvLTs=" currentSchema="WRKSCHM"/>
</dataSource>
<dataSource jndiName="TestApp/jdbc/WorklightReportsDS" transactional="false">
<jdbcDriver libraryRef="TestApp/DB2Lib"/>
<properties.db2.jcc databaseName="WLREPORT" serverName="127.0.0.1" portNumber="50001" user="db2inst1" password="{xor}Lz4sLChvLTs=" currentSchema="WLRESCHM"/>
</dataSource>
</server>
答案 0 :(得分:1)
预览不适用于生产环境,但预览按钮仍然存在于MFPF 7.0的GM版本中。
我想你可能会打到APAR PI37266:
MFP操作控制台:必须预览常见资源按钮 隐藏在生产环境中。
因此,您应该将安装更新到最新的7.0 iFix,其中预览按钮不再可用。要获取最新的iFix,您需要登录IBM Fix Central网站并搜索&#34; mobilefirst platform&#34;得到最新的。
如果在升级到最新的iFix后仍然看到预览按钮,请尝试强制清除浏览器的缓存。您还可以通过检查网络视图&gt;来验证这一点。 Chrome浏览器的DevTools中的预览标签。它应该显示请求/响应的属性列表,其中一个是&#34; developmentMode:true/false
&#34;)。它应设置为false
。