2015-03-31 45 views
2

我有部署到本地WildFly服務器的Web應用程序。我目前正在研究前端,並且在測試數據調用時遇到麻煩。我所有的數據收集都是通過AJAX完成的,因此需要我在實際的服務器上來消除任何跨站點問題。這不是問題,但重新部署整個應用程序只是爲了調整一行javascript是非常耗時的。快速更新WildFly服務器上的靜態內容

我已經成功地部署了爆炸戰。但是,這在我保存文件時強制重新部署。有沒有辦法讓我在不重新部署的情況下快速自動更新靜態內容?

+0

我有確切的同樣的問題。我不熟悉wildfly和Java Web開發,但在使用前端自動化工具(如gulp)方面頗有經驗。在野蠻環境中進行livereload工作會很棒,就像我已經習慣了:) – 2015-11-18 11:18:55

+0

你最終在這裏做了什麼?我在同一條船上。 – 2017-04-05 21:02:50

回答

-1

可能不是你所希望的答案;但另一種方式是使用正確的前端開發工具。例如:Webpack(http://webpack.github.io/)在構建和測試您的前端時嘲笑您的REST後端。這樣你也可以很容易地測試你的JavaScript前端。

0

你也可以使用這個CORSFilter我想我找到了 here。周圍有很多。

這會將Access-Control-Allow-*標頭添加到回覆中,從而防止客戶拒絕回覆,因爲它會以安全原因進行回覆。

我把它列入我的web應用程序(現在),對http://localhost:8080 運行,然後我就可以在 http://localhost:8000在同一臺機器上運行我的呼嚕聲/一飲而盡/節點服務器瓦特/ livereload「」作爲 平常'在服務器之間做請求。

我是後端架構師,我沒有做過多的前端工作,所以 可能是更好的解決方案;這是我今天如何解決它的。

CORSFilter

@Singleton 
@Provider 
public class CORSFilter implements ContainerResponseFilter { 

    @Override 
    public void filter(final ContainerRequestContext requestContext, final ContainerResponseContext cres) 
     throws IOException { 
     cres.getHeaders().add("Access-Control-Allow-Origin", "*"); 
     cres.getHeaders().add("Access-Control-Allow-Headers", "origin, content-type, accept, authorization"); 
     cres.getHeaders().add("Access-Control-Allow-Credentials", "true"); 
     cres.getHeaders().add("Access-Control-Allow-Methods", "GET, POST, PUT, DELETE, OPTIONS, HEAD"); 
     cres.getHeaders().add("Access-Control-Max-Age", "1209600"); 
    } 

}