2011-04-09 46 views
0

大量的調查從Silverlight的調用Web服務後: Calling a Java Web service from silverlight throws an exceptionJava - localhost根文件夾?

我發現了我,我應該要創建一個clientaccesspolicy.xml文件,並把它放在應用程序的根文件夾中。我將它複製到我的ASPX(網頁)的根文件夾中,但它沒有幫助。我猜測根文件夾應該是我的Java服務的服務器的根文件夾。我在我的Win7 x64系統上安裝了apache服務器,但是在停止之後,Java仍然工作,所以我猜測Eclipse IDE的服務器與Apache不同。

所以這裏的主要問題是:Java Eclipse服務器的根文件夾在哪裏?我應該在哪裏放置該XML文件?

謝謝。

+0

不可能給出準確答案,因爲沒有在Java中做事的罐頭之一。描述您的Java項目結構(是否有WebContent目錄)和目標應用程序服務器(及其版本)。當你說「Apache」時,你指的是Tomcat還是常常位於它前面的Apache HTTP服務器? – McDowell 2011-04-09 16:12:35

+0

獲取任何進程列表查看器,找到運行的tomcat,看看它的工作目錄。如果我沒有記錯,Eclipse AppServers是在C:\的根目錄下創建的,但我無法確定。 – 2011-04-09 16:45:34

回答

1

如果您正在使用Endpoint.publish(字符串)的自託管Java web服務,那麼我認爲無法添加更多文件以供傳遞,例如,一個crossdomain.xml

相反,您需要從一個自承載的web服務切換到一個服務器託管的web服務,如here所述(本教程使用Netbeans,但是Eclipse也應該可以使用類似的方法,即使它也是如此在這個例子中使用Netbeans可能會稍微容易一些)。由於Tomcat作爲服務器使用,因此也可以交付相應的Silverlight項目文件,在這種情況下,您不需要crossdomain.xml

+0

感謝您的回覆。我知道你已經閱讀了我以前的文章,但是我不知道你是否知道我有一個可以使用的項目,並且它不是一個Web項目。主要的帖子是[這裏](http://stackoverflow.com/questions/5595028/add-a-web-service-to-a-already-available-java-project)這就是一切開始的地方。但在教程中,據說會創建一個新項目。我該怎麼辦?我需要儘快完成這個項目!非常感謝您的幫助 – 2011-04-09 20:46:35

+1

對不起,我不知道你的問題是後續行動。也許有一個(複雜的)解決方案讓Endpoint.publish()也可以按照下面的描述手動提供crossdomain.xml:[link] http://java.dzone.com/articles/java-se-endpoints-and(但是沒有測試過我自己)。 – jCoder 2011-04-09 21:14:05

+0

哦,上帝!真的,你這次救了我的生命:D你發佈的文章只是IT!我想要的。只是在該文章中複製了該課程,將該課程的端口更改爲我的課程,並準備就緒。注意:您應該將** implements Provider **更改爲** implements Provider ** – 2011-04-09 23:17:37