О Java апплетах замолвите слово

  1. 7 г. назад
    09.11.2016 12:12:01 отредактировано sda553

    Думал по быстрому сваяю апплетик, а не тут то было.
    На обычном примере простейшего хттпклиент-апплета из инетов
    На строке

    HttpClient client = new DefaultHttpClient();

    Апплет вешается и висит в браузере ie и ff как будда в глубокой медитации.
    Комментирую эту строку - работает апплет. Но в этой строке вся суть апплета, как бы.

    Наверняка вы все знаете какой то секрет, подскажите.

    Ответы: (15) (30) (75)
  2. HttpClient client = HttpClientBuilder.create().build();

    Ответы: (4)
  3. Эио httpcomponents 4.3 надо. У меня 4.2. Сейчас попробуем сапгрейдиться

  4. Не забывайте закрывать респонсы.

  5. не, теперь виснет строка из (1)

  6. Commons Codec, Commons Logging в зависимостях стоят?

  7. 09.11.2016 12:38:50 отредактировано sda553

    нет, нафига они тут. Сейчас попробую упростить апплет до минимума и выложу

  8. 09.11.2016 13:55:48 отредактировано sda553

    Разобрался, ты был прав.
    Действительно, надо было добавить Logging зачем то в зависимости. Заработало.
    Но самое главное знание, это то, что надо консоль java всегда открывать, тогда видна причина, чего апплет висит.

    PS:Мышь шарит в этой теме. Так что это точно не смит.

    Кстати сразу вопрос. Этот httpclient позволяет делать запросы к чужому домену? А то это моя главная цель, из за чего и js не подошел мне

    Ответы: (9) (11) (12) (20)
  9. Наконец-то.

  10. 09.11.2016 14:02:03 отредактировано sf

    sda553 Этот httpclient позволяет делать запросы к чужому домену? А то это моя главная цель, из за чего и js не подошел мне

    Since the Java 6 Update 10 release (2008-10-15), unsigned applets can now make network connections to remote servers (servers that are different from the server that hosts the applet) using a special XML file called crossdomain.xml file.

    Ответы: (10)
  11. (9) крутяк. Продолжаю тогда в этом направлении работать

  12. sda553 Так что это точно не смит

    как раз и он )

  13. sda553 тот httpclient позволяет делать запросы к чужому домену? А то это моя главная цель, из за чего и js не подошел мне

    вот для общего развития, можешь в двух словах, почему на js не взлетело?

    тут пишут, что у cors ограничения, но в js работает

    Ответы: (13)
  14. (12) я не пробовал js

  15. 09.11.2016 16:15:18 отредактировано sda553

    Оказалось, кроме правки crossdomain.xml на серваке, надо еще и java.policy править локально. Добавлять туда

    new SocketPermission("mysite.com:80", "connect");
  16. (0) - скажи ка ватник, а зачем ты используешь уже 20 лет как устаревшую технологию?

    Ответы: (17) (20)
  17. ты что, думаешь, что ты кому то будешь нужен, когда напишешь в своем резюме "писал Hello World InterNet апплет на жабе"?

  18. (15) Это не ватник. Это один из самых отъявленных либералов форума.

  19. Нет, нет. Ява апплеты могут писать в 2016-м только ватники

  20. wiki:Java_applet

    С таким же успiхом вы бы сейчас начали изучать пейсать ActiveX и внедрять их в IE 4.x

  21. (15) внимательнее смотри (7), ответ на твой вопрос в последнем абзаце

    Ответы: (21)
  22. (20) - и?

    http://stackoverflow.com/a/2067584/444079

    http://stackoverflow.com/a/3506306/444079

    Ответы: (23) (25)
  23. елы палы, именно по этой причине во всякие Германии по блауе карте берут именно украинских и белорусских программистов. А не разсейсгих.

  24. (21) ты явно не в теме.

    Ответы: (24)
  25. (23) - ну давай расскжи мне, как ты будешь запускать java апплет в браузере, если его запуск запрещен политиками безопасности

    Ответы: (25)
  26. (24) Внезапно, надо разрешить его политиками безопасности. Чтобы избежать последующих вопросов и флуда повторюсь, что ты не в теме задачи, а судя по (21) у тебя мало опыта в данной теме. Ну а у меня не много времени.

  27. 10.11.2016 16:40:07 отредактировано Программист

    разрешать это дырявое говно и подвергать опасности клиентов? очень разумное решение! Твой CTO будет очень рад этому.

    Ответы: (27)
  28. 10.11.2016 17:12:52 отредактировано sda553

    (26) как ты бы решил данную задачу? Поделись. Так и быть потрачу время, может у кого есть бест практис?
    Задача: есть несколько сервисов на которых поднят веб сервис 1С (soap). Серверов много (около 300), по количеству городов. Иногда сервера падают, иногда в них падает 1С, иногда внутри 1С падает какая нибудь фигня, иногда все начинает работать медленно из за падения скорости на каналах, иногда программист чего то накосячит и все работает но не так как надо.
    Надо придумать способ, чтобы у технической поддержки был способ постоянно видеть "монитор" данных серверов на предмет отклонения их от нормальной работы и давать какие то предупреждения вида: "сервер недоступен","скорость канала упала", "веб-сервис считает какую то фигню", "канал хорош, но сервис 1С чего то задумался на простой операции"
    Ни один стандартный монитор не принимается, т.к. мониторить надо успешное выполнение специфических задач 1С.
    При этом ограничения:
    1. приложение должно быть полностью клиентским, таким образом нельзя поднимать дополнительных серверов, нельзя подселяться какой либо код к существующим серверам
    2. Можно использовать только браузерное решение

    Ответы: (28)
  29. (27)

    мониторить надо успешное выполнение специфических задач 1С

    Почему нельзя решать эту задачу на самой же 1с?

    Ответы: (29)
  30. (28) из за ограничений 1+2.Одинэска может быть браузерной тогда и только тогда, когда у нее есть серверная часть.

    Фактический огранмчения 1+2 дают только html в который можно встроить что то активное.
    js и html5 не способен работать с кроссдоменными соап.
    Остаются апплеты.

    Ответы: (31)
  31. 10.11.2016 17:37:26 отредактировано sda553

    вот и пришлось мне вспомнить детство и сделать то, что в (0)

  32. (29) Я понял что "нельзя поднимать дополнительных серверов" значит дополнительно к уже работающему 1с серверу. Но если совсем ничего серверного нельзя, то похоже без вариантов. Любить жабу.

    Ответы: (32)
  33. 10.11.2016 17:44:13 отредактировано sda553

    (31) верно, это бизнес проблема. в том, что техподдержка от одной фирмы А, а 1с-сервера и приложения от другой фирмы Б.
    Фирма Б запрещает преврашать свои одинэски и сервера в песочницы. А фирма А не хотит покупать сервера и какие либо допприложения

  34. 10.11.2016 17:55:27 отредактировано sda553

    По моей задумке, активное приложение, встроенное в html (я пока еще не решил, что это будет именно java applet, просто пробую разные варианты) посылает ненапряжный соап запрос веб сервисам разных серверов 1С, для которого заранее известен ответ. Что то типа автоматического тестирования сервиса получается.
    И страница показывает данные типа "время отклика", "время обработки сервиса", "результат". Сравнивает все это с опорными значениями и подкрашивает, если те стали выбиваться из канвы.

    Ответы: (34)
  35. (33) Если делать вариант пинга на соап-сервисе, то имеет смысл в ответ сервиса запихивать какую-нибудь потенциально полезную инфу. Ип адрес или статистику по потребляемым ресурсам. Что-бы потом 2 раза не вставать.

или зарегистрируйтесь чтобы ответить!