Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> развернуть сервис на прием массива, wsdd 
:(
    Опции темы
Grig
Дата 31.7.2008, 10:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 809
Регистрация: 29.4.2005
Где: Иркутск

Репутация: нет
Всего: 16



Здравствуйте!

Есть такой класс:
ArrayTest.java
Код

package soapinterop.org;

public class ArrayTest {
    public String[] EchoArray() {
        String[] arr_str = new String[1];
        arr_str[0] = "JAVA1jhh";
        return arr_str;
    }
    public String[] inArray(java.lang.String[] inputStringArray) {
        inputStringArray[0] = "in";
        return inputStringArray;
    }
}


server-config.wsdd
Код

<service name="array" provider="java:RPC" style="wrapped" use="literal">
      <namespace>http://soapinterop.org</namespace>
      <parameter name="className" value="soapinterop.org.ArrayTest" />
      <parameter name="allowedMethods" value="*" />


        <typeMapping
          xmlns:ns="http://soapinterop.org"
          qname="ns:ArrayOfString"
          type="java:java.lang.String[]"
          serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
          deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
          encodingStyle=""
        />

        <typeMapping
          xmlns:ns="http://soapinterop.org"
          qname="ns:array"
          type="java:java.lang.String[]"
          serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
          deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
          encodingStyle=""
        />

<typeMapping
    xmlns:ns="http://soapinterop.org" 
    qname="ns:ArrayOf_xsd_string"
    type="java:java.lang.String[]"
    serializer="org.apache.axis.encoding.ser.ArraySerializerFactory"
    deserializer="org.apache.axis.encoding.ser.ArrayDeserializerFactory"
    encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
</service>



функция EchoArray передает массив нормально, а принять массив функцией inArray сервис не может. Вот какими сообщениями клиент с сервисом обменялись:

Клиент:
Код

POST /services/array HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; MS Web Services Client Protocol 2.0.50727.42)
VsDebuggerCausalityData: uIDPo0ubwn+2RaJEpxM5yp/pa9MAAAAAZ7kRW9NkiUmEcV1IY9afzRGOcHibrHpIsB9/PDtwmW0ACAAA
Content-Type: text/xml; charset=utf-8
SOAPAction: ""
Host: localhost:8001
Content-Length: 341
Expect: 100-continue

<?xml version="1.0" encoding="utf-8"?><soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><soap:Body>
<inArray xmlns="http://soapinterop.org">
<inputStringArray>JAVA1jhh</inputStringArray></inArray>
</soap:Body>
</soap:Envelope>


Сервис:
Код

HTTP/1.1 500 Internal Server Error
Server: Apache-Coyote/1.1
Content-Type: text/xml;charset=utf-8
Transfer-Encoding: chunked
Date: Thu, 31 Jul 2008 07:06:28 GMT
Connection: close

22c
<?xml version="1.0" encoding="utf-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<soapenv:Fault>
<faultcode>soapenv:Server.userException</faultcode>
<faultstring>org.xml.sax.SAXException: Found character data inside an array element while deserializing</faultstring>
<detail><ns1:hostname xmlns:ns1="http://xml.apache.org/axis/">class_ivc1</ns1:hostname></detail>
</soapenv:Fault>
</soapenv:Body>
</soapenv:Envelope>
0


как можно настроить wsdd чтобы сервис принимал массив?



--------------------
        
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   tux
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема »


 




[ Время генерации скрипта: 0.0500 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.