2011-11-01 68 views
1

我有一個運行我的CXF-based webapp的tomcat。Tomcat:如何訪問Apache CXF-webapp中的本地文件?

方法我一起工作的有簽名這樣的:

@GET 
@Path ("/handler/contract/{ItemId}") 
@Produces ("application/xml") 
public Item getItem(@PathParam("ItemId") Integer ItemId) throws Exception{ 
    //... 
    return item; 
} 

這通常是非常有用的,因爲我沒有處理效應初探/請求對象和覆蓋的業務邏輯。

但現在我需要訪問本地文件,以便將其插入到PDF中。我查看了這裏和文檔中的所有項目,但無法找到可靠的easy方式訪問上下文請求查找web應用程序的當前路徑,以便我可以在分解的WAR中訪問該文件。

任何幫助如何獲得CXF-webapp的當前本地路徑?

回答

1

一如既往,如果你最終寫了一篇文章,你會自己找到解決方案。通過@Context註釋,您將獲得正確的上下文。

@GET 
@Path ("/handler/contract/{ItemId}") 
@Produces ("application/xml") 
public Item getItem(@Context ServletContext context, @PathParam("ItemId") Integer ItemId) throws Exception{ 
    //retrieve the local path from the context 
    String currentLocalPath = context.getRealPath("."); 
    //... 
    return item; 
} 

感謝您的訪問。 :)