你的$ {} app.home指向正確的地方。不要忘記,您運行的應用程序已歸檔(壓縮),部署並在Anypoint Studio中不屬於您的環境的應用程序服務器上運行。
所以,它運行時會在另一個地方運行。你應該在這個新的地方擁有所有必要的文件。簡單起見 - 使用資源而不是文件。讓應用程序服務器攜帶文件的位置。
下面是簡單的例子,其示出了從目錄公共任何靜態文件(資源) ![enter image description here](https://i.stack.imgur.com/Wnvk5.png)
這裏是代碼
<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