Форум программистов, компьютерный форум, киберфорум
HCL Notes: Программирование
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/116: Рейтинг темы: голосов - 116, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 12.10.2007
Сообщений: 522

Втянуть файл через Web-сервис в базу. Можно ли?

03.06.2010, 07:12. Показов 22638. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можно ли через Web-сервис втянуть файл, ну и прикрепить его к документу?
Подскажите в какую сторону копнуть
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
03.06.2010, 07:12
Ответы с готовыми решениями:

Необходимо организовать базу данных, которую можно будет обновлять через интернет и через программу
Доброе всем время суток... Вот, собственно, вопрос.. Необходимо организовать базу данных, которую можно будет обновлять через...

Можно ли копировать базу Денвера как обычный файл?
Если я правильно понимаю, то база - это тоже файл (или несколько файлов). Можно ли скопировать базу Денвера как файл (или несколько...

Можно ли как нибуь сохранить видео файл в базу данных?
Приветствую форумчане! Надо на форме воспроизвести видеофайл. Но я его должен сохранить в базе данных. Так вот. Как можно его сохранить?...

7
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
03.06.2010, 09:22
Запрос и ответ — это xml. Нужно разработать соответствующий интерфейс. В запросе указывать путь и имя файла или другую идентифицирующую информацию, в ответ "упаковывать" файл в xml в соответствующей кодировке, на приёме "распаковывать". Ключевые слова для поиска в справке Lotus: wsdl, dxl, NotesDOMParser, NotesDXLExporter, NotesDXLImporter, NotesSAXParser, NotesXSLTransformer, NotesXMLProcessor. Ну и тут на форуме примеры мелькали.
0
0 / 0 / 0
Регистрация: 04.11.2007
Сообщений: 3,019
03.06.2010, 11:14
susinmn
а вы смогли для начала просто втянуть какую нить страничку?
если смогли то в чем проблема втянуть файл?
0
0 / 0 / 0
Регистрация: 04.10.2007
Сообщений: 2,977
03.06.2010, 11:23
susinmn
глянь эту статьюhttp://www.ibm.com/developerworks/lotus/li.../web-services3/

Code
1
http://www.ibm.com/developerworks/lotus/library/web-services3/
в ней есть какой-то раздел "Dealing with file attachments"
0
kor
07.06.2010, 16:24
есть по этой ссылке такой раздел...
Скачал базу, решил посмотреть что к чему.

Есть там такой ЛОтусовый вебсервис BookDownloadUpload, который якобы должен создавать новый документ и крепить к нему аттачмент.
Всё через SOAP Toolkit 3.0

Попробовал его заюзать с помощью опять же уже написанного агента в этой базе, который обращается к этому веб сервису (MSSOAP BookDownloadUpload Test).

в вызове вебсервиса обращаюсь к функции addNewFile из сервиса BookDownloadUpload и передаю туда 5 параметров, последний из которых
бинарный stream


Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Sub Initialize
Dim wsdl As String
Dim client As Variant
Dim result As Variant
Dim result2 As Variant
 
 
Dim startTime As Single
Dim endTime As Single
 
** create the MSSOAP object, based on our WSDL file
startTime = Timer
wsdl = "http://test.server/WSBookstore.nsf/BookDownloadUpload?WSDL"
 
** try to use MSSOAP 3.0, if available
On Error Resume Next
Set client = CreateObject("MSSOAP.SoapClient30")
On Error Goto processError
 
** if not, use whatever version is on the workstation
If (Err > 0) Then
Err = 0
Set client = CreateObject("MSSOAP.SoapClient")
End If
Call client.MSSoapInit(wsdl)
 
** call the GetFirstTitleMatch method (note that MSSOAP is
** NOT case-sensitive with the method names)
Set result = client.getFirstTitleMatch("T")
endTime = Timer
Print "Total elapsed time: " & Fix((endTime - startTime) * 1000) & " milliseconds"
 
================================
Dim session As New NotesSession
Dim fileIN As NotesStream
Set fileIN = session.CreateStream
 
 
If Not fileIN.Open("c:\teete.txt","Binary") Then
Msgbox "Cannot open teete.txt", , "Error"
Exit Sub
End If
If fileIN.Bytes = 0 Then
Msgbox "File did not exist or was empty", , "teete.txt"
Exit Sub
End If
 
Set result2 = client.addNewFile("test","Test","description one sdfasf", "Reference", "teete.txt",fileIN)
==========================================з
На этой строчке

Set result2 = client.addNewFile("test","Test","descrip tion one sdfasf", "Reference", "teete.txt",fileIN)

сваливается в ошибку о несоответствии типов... Хотя вроде бы написано что данный параметр может принимать либо бинарный либо ASCII поток...

в функции addNewFile такая:


Code
1
2
3
4
5
6
7
8
9
10
11
12
Public Function addNewFile (title As String, author As String, description As String, _
typeOfBook As BookType, fileName As String, base64file As XSD_BASE64BINARY, _
returnFault As WS_FAULT) As String
Dim book As New BookInfoAndFile
book.title = title
book.author = author
Set book.typeOfBook = typeOfBook
book.description = description
book.fileName = fileName
Set book.base64file = base64file
addNewFile = addNewFileComplex(book, returnFault)
End Function
т.е. переменная типа base64file As XSD_BASE64BINARY

что же в неё тогда передавать если не поток?? и что это за тип такой?
Кто нибудь копал дальше?)))
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
07.06.2010, 16:41
Gor
В справке дизайнера см. разделы "Java and LotusScript mappings", "Web services Java and LotusScript classes"
0
kor
07.06.2010, 17:35
почитал...



The following LotusScript XSD classes are proxy classes: XSD_BASE64BINARY, XSD_DATE, XSD_DATETIME, XSD_HEXBINARY, and XSD_TIME. Like the other XSD classes, they have a public variable named "Value" that you can get and set. However, the "Value" variable is not of type String.

The information for the classes XSD_BASE64BINARY and XSD_HEXBINARY is passed in NotesStream format.

Но всё равно непонятно, почему вызываемая функция
Set result2 = client.addNewFile("test","Test","descrip tion one sdfasf", "Reference", "teete.txt",fileIN)


Code
1
2
3
4
5
6
7
8
9
10
11
12
Public Function addNewFile (title As String, author As String, description As String, _
typeOfBook As BookType, fileName As String, base64file As XSD_BASE64BINARY, _
returnFault As WS_FAULT) As String
Dim book As New BookInfoAndFile
book.title = title
book.author = author
Set book.typeOfBook = typeOfBook
book.description = description
book.fileName = fileName
Set book.base64file = base64file
addNewFile = addNewFileComplex(book, returnFault)
End Function
возвращает несоответствие форматов.


"SOAP Fault: Client:Type conversion failure for element BASE64FILE Detail: Client:Type conversion failure for element BASE64FILE HRESULT=0x80020005: Type mismatch.
На вход же подаётся формат notesstream...

Или же пора мне с этим заканчивать и идти домой)))
0 / 0 / 0
Регистрация: 19.04.2009
Сообщений: 2,219
07.06.2010, 17:52
Gor
Читаем внимательно :blush::
XSD_BASE64BINARY
The proxy class mapped to XML Schema type base64Binary. Nillable.
Super class:
XSD_SIMPLETYPE
methods:
SUB setValueFromNotesStream (nsValue As NotesStream)
Sets the XML representation by converting bytes in the NoteStream to a base64-encoded string.
FUNCTION getValueAsNotesStream () As NotesStream
Converts the current base64-encoded XML representation to bytes in the returned NotesStream.
Inherited methods:
SUB setValueFromString (value As String)
Sets the current value from a string of base64-encoded characters
FUNCTION getValueAsString () As String
Returns the current value of base64-encoded characters.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.06.2010, 17:52
Помогаю со студенческими работами здесь

Запрос в базу данных через PHP файл
Здравствуйте уважаемые форумчане, у меня тут возникла проблема. Прошу помогите решить её... Мне вот что нужно, есть скрипт который...

Реализовать базу данных через текстовый файл
народ у меня есть вопрос как сделать чтобы программа на си++ записывала данные в одномерный массив а потом записывала данные массива в...

VBA Excel: можно ли сохранить web-страницу в файл htm?
Перерыл кучу литературы и нигде не нашёл. Короче, нужно сохранить web-страничку, например http://www.yandex.ru/ на винт в файл...

Редактирование файлов через WEB (файл менеджер)
Здравствуйте. У хостера в тарифных планах написано - Редактирование файлов через WEB (файл менеджер). Скажите, в двух словах, это как? ...

Можно ли сдедствами PHP загрузить XML файл с чужого сервера к себе в базу
Пробовал скачать и сделать парсинг средствами ajax. С парсингом нет проблем, но скачать с чужого сервера к себе не получилось. ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3, Box2D, FreeType и SDL3_ttf из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru