Показаны сообщения с ярлыком java. Показать все сообщения
Показаны сообщения с ярлыком java. Показать все сообщения

вторник, 10 августа 2010 г.

Ода eclipse

Очень часто люди задаются вопросом, чем пользоваться для разработки программного обеспечения. Однозначного ответа тут нет. У меня очень долго не складывались отношения с eclipse, так как либо он тормозил, так как компьютеры были слишком слабыми, либо он падал, так как что-то с чем-то не срасталось, либо у меня на тот момент оказывались более удобные инструменты. В целом, использование eclipse идет немного мимо желания шире использоват vim. И тем не менее, я сейчас пользуюсь eclipse, и нисколько не жалею. Пользуюсь на маленьком asus eee 901, на котором как утверждается - невозможно им пользоваться. Оказалось - возможно. Главное, очистить как можно больше рабочего пространства. Мое выглядит приблизительно вот так:

Вполне душевно.

Самое вкусное естественно в том, что за время глючной жизни затмения под него было разработано множество плагинов, да и сам он оброс полезным функционалом. Перечислю те, которые сильно помогают мне:
  • Vrapper - делает eclipse похожим на vim. До полного сходства далеко, но зато весь функционал остается в непосредственной доступности.
  • Pydev - теперь мы можем редактировать и отлаживать python.
  • EPIC - если вы еще не забыли о языке perl, этот плагин вам также понадобится. Меня он тут очень выручил, когда выяснилось, что модуль получения котировок вышел из строя.
  • MercurialEclipse - интеграция с mercurial.

Итого, у меня почти vim, я могу править и отлаживать все что мне нужно, все это собрано в одном месте, да и в версии eclipse helios добавили хорошие возможности по созданию ссылок в рабочем пространстве, что сильно упрощает жизнь, очень удобно. В экран влезает, работает достаточно стабильно. Вот и встает вопрос, как же подружить свою любовь к vim и удобность работы с eclipse. Пока ответа нет (eclim не предлагать, хочу его использовать, но я так понимаю - придется его пилить, то, что я попробовал - это слишком мало, по сравнению с тем, что дает мне vrapper), я иду на компромисы и изучаю возможности и того и другого, не отдавая однозначного предпочтения. В конце концов я уверен, что прийду к какому-то хорошему варианту, лучше, чем текущий.

А пока, спасибо eclipse за повышение моей продуктивности.

воскресенье, 1 августа 2010 г.

Blogger'ное

Включил в блоггере draft.blogger.com - Черновик. Теперь можно смотреть статистику с панельки, а интерфейс стал немного более синим. Локацию можно добавлять, хотя в моем случае она будет весьма однообразна.

Буду публиковать на индусском англоязычные посты в java like me по как нетрудно догадаться java-тематике. Хоть этот язык (java) и стар и ограничен, но все же он суперстар, и еще очень даже ого-го. Уже даже один мега-пост запостил.

четверг, 29 июля 2010 г.

WASCE: Как получить ip запроса в методе вебсервиса JAX-WS Java

Столкнулся тут с этой достаточно занятной проблемой. Проблемой, которую сам притом себе создал. Оказалось, что если мы делаем war в котором есть веб-сервис, то все хорошо, и ip получить можно классическим способом через WebServiceContext. А вот если это веб-сервис, обернутый вокруг EJB, лежащий в ejb-проектике, то так сделать нельзя. Как я не бился - не получилось. А многие узколобики сразу же эту невозможность объяснили антипаттерновостью.
Теперь надо будет переводить свои веб-сервисы в war. Зато решение классическое, и должно работать хотя бы под WASCE и Glassfish, а для меня это уже немало.

среда, 14 июля 2010 г.

Мобильные мошенники mms-center.ru, 3353, 9797, incoremedia.ru, jobgazprom.ru

Мошенники не унимаются. На этот раз я решил даже изучить, что же это за фрукт. Итак, представляем вашему вниманию: mms-center.ru. Приходит сообщение на телефон следующего содержания: "Prinyato novoe MMS(id133) ot abonenta Lena dlya +xxxxxxxxxxx. Dlya prosmotra v telefone pereidite po ssylke: http://mms-center.ru/133". (отправитель - +79826105609). Перехожу на сайт с компьютера. Сайт радует прекрасным дизайном и предложением скачать открытку (одну на всех, что достаточно занятно). Скачал этот шедевр написания приложений на java. Распаковал. Дизассемблировал jad'ом. Посмеялся над кодом (особенно радуют System.out.println("2") и т.п. перлы для отладки этого шедевра). В картинку засунуто "зашифрованное" сообщение, откуда берется номер и текст для отправки SMS. В текущей вариации номер 3353 и сообщение - 353082443. Видимо, вынесено из кода во внешний файл для удобства дальнейшей модификации по прикрытии кормушки. Автор считает, что поле чудес продолжает работать и в файлике упоминает о платности услуги, всего каких-то "62 сантима с НДС". Это не совсем правда, спишут с вас как минимум 177 рублей (150 р + НДС). Ну и изначальная посылка является обманом, пишут о MMS, в то время как скачиваем мы java-приложение.

Поражает, что лучшей монетизации хорошего домена человек не придумал. Ну с этим все понятно, с таким кодом даже в Индии ничего платить не будут. Теперь упомянем кто крышует эту мразь. Все находится тоже достаточно быстро: incoremedia.ru. Обоснование невозможности проследить за мошенничеством очень просто: "мы не имеем физической возможности". Как обычно.

P.S. Нашел еще брата-близнеца на center-mms.ru. Там все то же самое, только сообщение 353212458.

P.P.S. Мошенник постоянно меняет номер, хочу уже даже сделать автомат на распарсивание. В последней редакции номер 9797 (177 - 200 рублей в зависимости от оператора), сообщение - 424843331474.

P.P.P.S. mms-new.ru и elena - это все та же незаурядная личность. И mmspicture.ru. И mmsbases.ru. mmsclck.ru - опять они. mms-photo.ru, server-mms.ru - сколько названий для одного и того же. И уверен, фантазия не иссякнет.

P.P.P.P.S mms-cntr.ru Очевидно новая реинкарнация, отмечаю наплыв народа по этому поисковому запросу (29-30 мая 2011). Теперь предлагается обновить opera. Результат обновления с такого сайта достаточно понятен. Сюда же мошеннический сайт mini6.ru, куда собственно происходит редирект.

P.P.P.P.P.S 1-mts.ru, boxmms.ru, new-mms.org, d.servicegid.net - мошенники, мошенники, мошенники. Им не надоело, интересно?

P.P.P.P.P.P.S Если кому-то интересно, то вот тут тусуются личности, которые зарабатывают в белую и черную. Там схем много. Пользователь "inokia" как раз из черных. http://forum.searchengines.ru/showthread.php?t=668802&page=6, а мошеннический сайт видимо вот этот http://jobgazprom.ru. Удачи и скорейшей посадки. Добавил в титл для поиска.

Нанотехнологии в деле: java System.nanoTime

Если вы где-то используете System.nanoTime(), перестаньте это делать. Оказывается, эта замечательная функция везде работает по разному, и ладно бы, если бы просто неточно. Разной может быть и размерность.

вторник, 24 ноября 2009 г.

Дружим java и python через web services

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



Мне потребовалось подружить java с python, для сервера мы используем jax-ws, а для клиента нашли сначала SOAPpy, но уперлись в то, что данная библиотека как-то плохо дружелюбна со сгенерированными jax-ws wsdl. Притом решать я начал проблему не с того конца. Я научился расширять генератор wsdl собственными классиками. Подцепился в самые нутри, добился таки смены targetNamespace... и налетел на ошибку через еще пару строчек SOAPpy.



Стало очевидно, что дальше с SOAPpy нам не по пути. Еще несколько минут поиска, и мы выходим на suds. Пока что моя кожа благодаря этой библиотеке - мягкая и шелковистая.



Про jax-ws выяснились откровенно говоря неприятные подробности: нутри страшные, индусско-японские, и совершенно дурацкие. Я вообще обычно тревожусь, когда для того, чтобы понять, куда надо ткнуться, мало прочитать статью автора, надо еще самолично проанализировать код, выругаться 10 раз, найти хак для того, чтобы сделать то, что надо нам, но что невозможно сделать тем механизмом, что поставил автор, и все это в первую неделю пользования либом. Зачем было пользоваться такими корявыми классами и так их коряво сращивать. И меня бы все это не волновало, если бы оно все работало. Так ведь нет, не работает еще вдобавок. Reference Implementation, называется.