Как пройти через поток мыльной памяти? - PullRequest
2 голосов
/ 17 июля 2011

Я создаю поток памяти.

var memoryStream = new MemoryStream();
var binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(memoryStream, list.ToArray());

И мне нужно пройти через мыло на java-сервер и вставить в базу данных.

А как создать метод webService?

@WebMethod(operationName = "CreateObject")
    public String CreateTopology(
            @WebParam(name = "session")int id_session, 
            @WebParam(name = "title") String title, 
            @WebParam(name = "content") Object content,
            @WebParam(name = "access") Integer access) {

EDIT: Проблема. Я сериализовал объект в C #. Мне нужно передать его на сервер через SOAP Java, после чего сохранить его в базе данных MySQL в поле типа Blob (может не быть BLOB)

Ответы [ 2 ]

0 голосов
/ 20 июля 2011

base64String - передать как строку

var memoryStream = new MemoryStream();
var binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(memoryStream, m_workspace.ListPlatforms.ToArray());

String base64String = Convert.ToBase64String(memoryStream.ToArray());
0 голосов
/ 17 июля 2011

Посмотрите здесь:

//build a Call object
   Call call = new Call();
   call.setTargetObjectURI("urn:greetingService");
   call.setMethodName("sayGreeting");
   call.setEncodingStyleURI(Constants.NS_URI_SOAP_ENC);

   //creating a parameter list
   Vector params = new Vector();
   params.addElement(new Parameter("name", String.class, name,null));

//adding the parameter(s) to the Call object
   call.setParams(params);

Вы устанавливаете имя метода "sayGreeting", а в параметрах вектора вы указываете параметры, с которыми будет вызываться метод.Этот параметр-вектор - то, что вам нужно!

Пример кода взят со страницы 2 этого урока, который я очень рекомендую: http://javaboutique.internet.com/tutorials/SOAP/

...