2012-03-19 56 views
0

我們正在嘗試爲JBoss 5應用服務器重寫IIS Web服務器處理程序,但是我找不到JBoss的類似概念。您能否就我們應該如何實施處理程序給出一些建議或指導,或者我們應該怎樣改進?爲JBoss 5應用服務器開發處理程序

爲了清楚起見,最終目標是讓一個應用程序不需要url中的名稱,以便每次只訪問IP地址或服務器名稱時被調用並運行。 例如http://13.10.15.48

應用程序(處理程序)應該抓住請求,處理它並傳遞給其他默認處理程序或Web服務器。

我應該搜索Tomcat處理程序嗎?

在此先感謝。

回答

1

默認情況下,JBoss具有指向默認應用程序的根上下文點。爲了將應用程序指向根上下文,您需要執行以下操作:

如果要將應用程序部署爲WAR文件,請將以下內容添加到/WEB-INF/jboss-web.xml(if它不存在)

<?xml version="1.0" encoding="UTF-8"?> 
<jboss-web> 
    <context-root>/</context-root> 
</jboss-web> 

如果你是作爲EAR文件部署應用程序,那麼你需要設置上下文根在/META-INF/application.xml文件如下

<application version="5" xmlns="http://java.sun.com/xml/ns/javaee" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation=" 
     http://java.sun.com/xml/ns/javaee 
     http://java.sun.com/xml/ns/javaee/application_5.xsd"> 

    ... 

    <module> 
     <web> 
     <web-uri>my-webapp.war</web-uri> 
     <context-root>/</context-root> 
     </web> 
    </module> 
</application> 

欲瞭解更多信息請參考[1]

希望這會有所幫助。

祝你好運!

[1] https://community.jboss.org/wiki/HowDoIOverrideTheWebContextRoot

+0

jBug,謝謝你,這很適合於部署在服務器上的根應用,但不幸的是,當一些訪問鏈接,例如'http://13.10.15.48/page?param = 1',jboss會嘗試再次搜索另一個名爲'page'的應用程序。我們試圖將我們的默認servlet映射到''/ *''url,但它沒有幫助。我們需要我們的應用程序來捕獲所有的url-s作爲代理,而jboss不應該嘗試處理它們。你能提出一些建議嗎? – 2012-03-27 13:24:04

+0

問題解決了:) – 2012-03-29 10:06:51

1

你會通過創建一個應用程序(WAR是好的)context-root設置爲/來做到這一點。

相關問題