2011-12-20 65 views
10

我想將圖像上傳到服務器,將它們存儲在文件系統(外部服務器)中,然後將它們顯示在我的JSF頁面上。如何在jBoss AS 7中配置靜態資源

我想找到這樣的事情:

<?xml version="1.0" encoding="UTF-8"?> 
<Context allowLinking="true" cookies="true" crossContext="true" override="true"> 
    <Resources allowLinking="true" 
     className="com.triplemind.site.engine.SourceResolverContext" 
     homeDir="/home/myapp/files" /> 
</Context> 

我找到了一些解決方案,但我不知道是否有更好的方法來做到這一點。

  1. Configure static resources in JBOSS AS 7(未回答)
  2. Replacement for context.xml in AS7? Access files outside the WAR?(沒有回答)

有JBoss文檔我發現:

  1. The static-resources element
  2. AdminGuide Container Configuration

任何幫助將不勝感激。在此先感謝

回答

3

最後,我決定使用由BalusC實施的FileServlet(link)。這個解決方案現在適合我。我只是將其basePath更改爲我的服務器上的某個特定路徑。

+0

發生了什麼事約定優於配置? – jacktrades 2013-01-12 00:36:07

1

在JBoss論壇上記錄的這種方法適用於我們加載展開文件夾中的所有靜態資源 - ,它必須位於JBOSS_HOME之內,但至少不包含在EAR/WAR中。

https://community.jboss.org/wiki/HowToPutAnExternalFileInTheClasspath

我不得不創建一個名爲COM/myCompany的/主模塊文件夾,並在裏面添加的所有圖像。

跳過第3步,改用第4步。 (入門的Manifest.MF - 其中工程)

該圖像是使用現在加載

URL imgUrl = this.getClass().getClassLoader().getResource("myimage.jpg");