Имя: Пароль:
1C
1С v8
JIRA + 1C
0 1cnik2
 
01.11.12
17:52
Кто-нибудь пробовал реализовать интеграцию жиры и 1с с помощью веб-сервисов?

1. Импортировал WS-ссылку https://jira.atlassian.com/rpc/soap/jirasoapservice-v2?wsdl в конфигуратор, от ошибок избавился по методу, описанному тут:
http://jira.teamlead.ru/browse/SUPPORT-2350

2. Пробую подключиться:
   Прокси = WSСсылки.JiraSOAP.СоздатьWSПрокси("https://jira.atlassian.com/rpc/soap/jirasoapservice-v2", "JiraSoapServiceService", "jirasoapservice-v2");
   
   Токен = Прокси.login("test","test");
   Сообщить(Токен);

до этого момента все нормально, auth-токен получен и успешно выводится в окно сообщений
А вот при вызове любого из методов
   
   Фильтры = Прокси.getFavouriteFilters(Токен);
   СписокЗадач = Прокси.getIssuesFromJqlSearch(Токен, "", 10);

получаю следующее:

{Форма.Форма.Форма(13)}: Ошибка при вызове метода контекста (getFavouriteFilters)
   Фильтры = Прокси.getFavouriteFilters(Токен);
по причине:
Ошибка вызова операции сервиса:  {https://jira.atlassian.com/rpc/soap/jirasoapservice-v2}:JiraSoapServiceService:getFavouriteFilters()
по причине:
Неизвестная ошибка. Ошибка при вызове метода объекта модели XDTO.
Неверный параметр.
по причине:
Ошибка при вызове метода объекта модели XDTO.
Неверный параметр.

С чем данная ошибка может быть связана?
1 Asmody
 
01.11.12
17:55
токен какого типа?
2 1cnik2
 
01.11.12
17:57
Токен - строка
3 Asmody
 
01.11.12
17:59
(2) а метод WS какой тип требует?
4 1cnik2
 
01.11.12
18:03
По всей видимости, тот же, что возвращает login(), судя по примеру отсюда:
https://developer.atlassian.com/display/JIRADEV/Creating+a+JIRA+SOAP+Client
5 Happy Bear
 
01.11.12
18:04
(0) хорошая идея. Тоже нужно их скрестить.
6 Asmody
 
01.11.12
18:05
вопрос в плане оффа: а вы для чего джиру используете?
7 1cnik2
 
01.11.12
18:06
как багтрекер
8 Asmody
 
01.11.12
18:08
(4) не факт. простые типы неявно преобразуются в типы 1С, а вот передача значений 1Сных типов в качестве параметров прокатывает не всегда.
9 MikeFromAtol
 
01.11.12
18:11
(7) Офф. Jira - очень классная система. У нас она используется для постановок и учета задач любому подразделению компании - от АХО до разработки
10 Asmody
 
01.11.12
18:13
(9) мы пытаемся запустить подобное на редмайне, но редмайн, сука, весьма гиковская система. интерфейс явно мутанты-рубиисты рисовали
11 1cnik2
 
01.11.12
18:13
(8) тоже подумал, но как еще по другому передать параметр типа string (http://www.w3.org/2001/XMLSchema)
12 1cnik2
 
01.11.12
18:14
и, что самое интересное, такие же типы у параметров метода login(), но таки они же принимаются
13 MikeFromAtol
 
01.11.12
18:15
(10) не скажу ничего про редмайн, но я к Jira-интерфейсу привыкал месяца 2 наверное. Но когда привык - тогда осознал и проникся, насколько гибкая и удобная штука.

ну и само собой веб-доступ отовсюду, где есть интернет. То есть я фактически везде, где есть интернет - я на работе
14 zladenuw
 
01.11.12
18:21
и когда они исправят что бы можно было так делать
АдресВебСервиса = "https://jira.atlassian.com/rpc/soap/jirasoapservice-v2";
   Определения = Новый WSОпределения(АдресВебСервиса + "?wsdl", Пользователь, Пароль);
придется конфу создавать :)
15 GLazNik
 
01.11.12
18:23
(0) чисто из любопытства. А зачем их соединять?
16 Mafoni
 
01.11.12
18:25
(0) - ссори за оффтоп - Скайп есть?
17 pumbaEO
 
01.11.12
18:29
(10) +10 , а альтернатив то и нет, по сравнению с trac , redmine выигрывает.
18 1cnik2
 
01.11.12
18:56
(16) есть, но уже только завтра с утра тему подниму
19 zladenuw
 
01.11.12
19:43
вот что выдало.
но сперва я в Жиру добавил фильтр
{Форма.Форма.Форма(21)}: Ошибка при вызове метода контекста (getFavouriteFilters): Ошибка вызова операции сервиса:  {https://jira.atlassian.com/rpc/soap/jirasoapservice-v2}:JiraSoapServiceService:getFavouriteFilters(): Ошибка SOAP сервера:  com.atlassian.jira.rpc.exception.RemoteAuthenticationException: User not authenticated yet, or session timed out.
20 zladenuw
 
01.11.12
19:48
(19) но я передавал имя фильтра.
tttt = Прокси.getFavouriteFilters("test");
21 1cnik2
 
02.11.12
08:18
этой функции не фильтр надо передавать, а токен авторизации
22 1cnik2
 
02.11.12
08:19
я пытался повторить этот пример: https://developer.atlassian.com/display/JIRADEV/Creating+a+JIRA+SOAP+Client
23 1cnik2
 
02.11.12
08:27
попробовал так:


   Прокси = WSСсылки.JiraSOAP.СоздатьWSПрокси("https://jira.atlassian.com/rpc/soap/jirasoapservice-v2", "JiraSoapServiceService", "jirasoapservice-v2");
   Определения = WSСсылки.JiraSOAP.ПолучитьWSОпределения();
   
   Токен = Прокси.login("test","test");
   
   Сообщить(Токен);
   
   ПриведенныйТокен = Определения.ФабрикаXDTO.Создать(Определения.ФабрикаXDTO.Тип("http://www.w3.org/2001/XMLSchema", "string"), Токен);
   
   Фильтры = Прокси.getFavouriteFilters(ПриведенныйТокен);


появляется та же ошибка
24 zladenuw
 
05.11.12
16:59
вот что нашел.
https://jira.atlassian.com/browse/JRA-16615
а вот это работает без проблем
  user = Прокси.getUser(test, "zladenuw");
25 1cnik2
 
05.11.12
21:06
а что там по ссылке? я с английским не очень, но вроде ничего полезного..
я склоняюсь к тому, что таки 1с с этой схемой несовместима, надо или использовать MSSOAP.SoapClient30, или другие интерфейсы жиры.. что печалит, потому что потеряется прозрачность, ну и время на разработку увеличится
26 BadTouch
 
06.11.12
08:31
SOAP Atlassian престал развивать, советую перейти на REST, ответы приходят в формате JSON, но он в принципе несложно разбирается (по сути как xml), тем более в soap многого не хватает.
У нас делался пример работы с soap (сначала вообще html парсили), увеличение производительности хорошее, но не хватает многих полей и их уже никогда не будет. REST в этом отношении лучше. В принципе все хорошо работает, единственное мы только вытягиваем данные, новые записи не создавали пока что...
27 BadTouch
 
06.11.12
08:35
Кстате метод указанный в запросе тимлида неверный, нельзя просто удалять дериктивы импорта. Необходимо ювелирно их разруливать в плоскую структуру. Ошибка получения данных именно в неверном описании, типы указанные в схемах теперь не определяются. Я с этим бился два дня, пока мозг на место не встал и я не сделал правильно)))
По сути необходимо в одну схему запихать все типы, чтобы исключить зацикливание.
28 Живой Ископаемый
 
06.11.12
08:38
2(26) а есть более конкретный пример для
https://developer.atlassian.com/display/JIRADEV/JIRA+REST+API+Example+-+Create+Issue
?
29 cw014
 
06.11.12
08:38
"Токен" соответствует типу "xsd:string"?
30 BadTouch
 
06.11.12
12:26
(28) Созданием объектов не занимались, пока тока получали данные, так что такого примера нет...
31 1cnik2
 
06.11.12
20:14
(29) соответствует, дело не в этом
32 1cnik2
 
06.11.12
20:20
(26) у нас жира 4.4.4, не знаю, насколько будет проблематично обновлять, а с REST там вроде не все так хорошо, как SOAP, судя по количеству методов... http://docs.atlassian.com/jira/REST/4.4.4/
33 1cnik2
 
06.11.12
20:22
(27) а вы не посоветуете wsdl-редактор, с помощью которого этот процесс можно было бы как-то автоматизировать?
или, может поделитесь своей схемой, если в вашем посте речь о жире?
34 1cnik2
 
06.11.12
20:24
(27) сорри, невнимательно прочитал, подумал, что у вас  получилось.. ((
тем не менее, можно поискать редактор
Программист всегда исправляет последнюю ошибку.