2011-04-09 3 views
0

après beaucoup d'enquêtes pour appeler un service Web à partir silverlight: Calling a Java Web service from silverlight throws an exceptionJava - dossier racine localhost?

Je trouve que je devrais-je créer un fichier clientaccesspolicy.xml et le mettre dans le dossier racine de l'application. Je l'ai copié dans le dossier racine de mon ASPX (page web) mais cela n'a pas aidé. Je suppose que le dossier racine doit être le dossier racine du serveur pour mon service Java. J'ai un serveur Apache sur mon système Win7 x64, mais après l'avoir arrêté, le Java fonctionnait toujours, donc je devine que le serveur pour Eclipse IDE est différent d'Apache.

Donc la question principale ici est: Où se trouve le dossier racine du serveur Java Eclipse? Où dois-je mettre ce fichier xml?

Merci.

+0

Il n'est pas possible de vous donner une réponse précise car il n'y a pas Une façon de faire les choses en Java. Décrivez votre structure de projet Java (a-t-elle un répertoire WebContent) et le serveur d'applications cible (et sa version). Quand vous dites "Apache", faites-vous référence à Tomcat ou au serveur HTTP Apache qui se trouve souvent devant lui? – McDowell

+0

Obtenez n'importe quelle visionneuse de liste de processus, trouvez Tomcat en cours d'exécution, regardez son répertoire de travail. Si je me souviens bien, Eclipse AppServers ont été créés directement à la racine de C: \, mais je ne peux pas en être sûr. –

Répondre

1

Si vous utilisez un webservice Java auto-hébergé avec Endpoint.publish (String), je pense qu'il n'est pas possible d'ajouter d'autres fichiers pour la distribution, par ex. A la place, vous devez passer d'un service web auto-hébergé à un service web hébergé par serveur comme décrit here (le tutoriel utilise Netbeans, mais une approche similaire devrait être possible avec Eclipse, même si elle peut être légèrement plus facile à utiliser Netbeans pour cet exemple). Comme Tomcat est utilisé comme serveur, il est également possible de fournir les fichiers de projet Silverlight correspondants, auquel cas vous n'avez pas besoin de crossdomain.xml

+0

Merci pour la réponse. Je sais que vous avez lu mon post précédent mais je ne sais pas si vous savez que j'ai un projet prêt à l'emploi et que ce n'est pas un projet web. Le post principal est [ici] (http://stackoverflow.com/questions/5595028/add-a-web-service-to-a-already-available-java-project) C'est là que tout a commencé. Mais dans le tutoriel, il est dit de créer un nouveau projet. Que devrais-je faire? Je dois préparer ce projet dès que possible! Merci beaucoup pour votre aide –

+1

Désolé, je n'étais pas au courant que votre question était un suivi. Peut-être qu'il existe une solution (complexe) pour que Endpoint.publish() fournisse aussi un fichier crossdomain.xml manuellement comme décrit ici: [link] http://java.dzone.com/articles/java-se-endpoints-and (mais Je n'ai pas testé cela moi-même). – jCoder

+0

Oh mon Dieu! Sérieusement, vous avez sauvé ma vie cette fois: D L'article que vous avez posté ce que juste IT! Ce que je voulais. Juste copié la classe dans cet article, changé le port de cette classe à la mienne et il était prêt à partir. Note: Vous devez changer le ** implements Provider ** à ** implements Provider ** –

Questions connexes