你的$ {} app.home指向正确的地方。不要忘记,您运行的应用程序已归档(压缩),部署并在Anypoint Studio中不属于您的环境的应用程序服务器上运行。
所以,它运行时会在另一个地方运行。你应该在这个新的地方拥有所有必要的文件。简单起见 - 使用资源而不是文件。让应用程序服务器携带文件的位置。
下面是简单的例子,其示出了从目录公共任何静态文件(资源)
这里是代码
<flow name="publicFilesHttpsFlow">
<http:listener config-ref="HTTPS_listner" path="/StatusESB/public/*" doc:name="HTTP"/>
<set-variable variableName="resourceName" value="#[message.inboundProperties['http.request.uri'].substring(18)]" doc:name="Variable"/>
<set-payload value="#[Thread.currentThread().getContextClassLoader().getResourceAsStream(flowVars.resourceName)]" doc:name="Set Payload"/>
</flow>
在本例中下目录的src /主/资源的任何文件/ public是资源并通过depryment切换到应用程序服务器将显示为html页面。像
https://localhost/StatusESB/public/HelloWorld.html
这是可以使用HTTP静态处理程序? – user94538
我不知道你的意思是“http静态处理程序”。假设你的意思是为每个单独的文件编写独立的HTTP监听器,例如/HelloWorld.html,/HelloWorld1.html,/HelloWorld2.html等单独的监听器 - 是的,它可以完成。这将是雇用开发人员的重要原因;) – Alex
我的意思是这样的 –
user94538