Silverlight 3 + Java WebService - PullRequest
       12

Silverlight 3 + Java WebService

0 голосов
/ 12 марта 2010

У меня есть проект Silverlight 3, и мне нужно вызвать Java WebService - с привязками все в порядке (SOAP 1.1 и basicHttpBinding):

Файл ClientConfig:

<configuration>
<system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding name="SkyinfoTestInterfaceExport2_SkyinfoTestInterfaceHttpBinding"
                maxBufferSize="2147483647" maxReceivedMessageSize="2147483647">
                <security mode="None">
                    <transport>
                        <extendedProtectionPolicy policyEnforcement="Never" />
                    </transport>
                </security>
            </binding>
        </basicHttpBinding>
    </bindings>
    <client>
        <endpoint address="myAddress"
            binding="basicHttpBinding" bindingConfiguration="SkyinfoTestInterfaceExport2_SkyinfoTestInterfaceHttpBinding"
            contract="SkyInfoServiceReference.SkyinfoTestInterface" name="SkyinfoTestInterfaceExport2_SkyinfoTestInterfaceHttpPort" />
    </client>
</system.serviceModel>

Когда я вызываю метод на клиенте, я получаю эту Политическую ошибку:

Произошла ошибка при попытке сделать запрос к URI '...'. Это может быть связано с попыткой доступа к сервису междоменным способом без надлежащей междоменной политики или с политикой, которая не подходит для служб SOAP. Вам может потребоваться связаться с владельцем сервиса, чтобы опубликовать файл междоменной политики и убедиться, что он позволяет отправлять HTTP-заголовки, связанные с SOAP. Эта ошибка также может быть вызвана использованием внутренних типов в прокси-сервере веб-службы без использования атрибута InternalsVisibleToAttribute. Пожалуйста, смотрите внутреннее исключение для более подробной информации.

Я знаю о тех двух XML-файлах политики, но служба Java EE, которую я пытаюсь вызвать, размещена на IBM WebSphere Process Server, к которому у меня нет доступа.

Кто-нибудь знает, как обойти это исключение из политики?

1 Ответ

0 голосов
/ 12 марта 2010

Поскольку у вас нет доступа к серверу для реализации междоменной политики, вам необходимо реализовать прокси-службу RIA. Просто имитируйте запросы / ответы в вашей локальной службе и перенаправляйте эти запросы в исходную службу, а затем возвращайте ответы при необходимости.

...