Archive for category Рабочее

Извините, на вашем счете ноль доллар, досвидания

Интересный глюк приключился с SIP от корбины. Мило посылает по грибы при поптыке позвонить, хотя деньги на счете есть. Причем посыл не может не радовать.
Ноль доллар, досвидания (mp3)

No Comments

Некорректная работа java.net.CookieManager

При работе с классом java.net.CookieManager иногда возникают странные баги. Например, следующий фрагмента кода будет работать с указанным URL, но с некоторыми другими не будет:

String urlString = "http://java.sun.com";
CookieManager manager = new CookieManager();
CookieHandler.setDefault(manager);

URL url = new URL(urlString);
URLConnection connection = url.openConnection();
// force cookie processing
Object content = connection.getContent();

CookieStore cookieJar = manager.getCookieStore();
List HttpCookie> cookies = cookieJar.getCookies();
for (HttpCookie cookie : cookies) {
  System.out.println(cookie);
}

Под катом подробнее.
Read the rest of this entry »

,

No Comments

Список всех Jabber конференций

В процессе изучения Groovy получился приятный сервис – Список всех Jabber конференций. Класс Analyzer, написанный на Groovy анализирует XML, полученный с jabberes.org со списком серверов, и опрашивает каждый из них, получая список конференций. На выходе получается XML файл, который можно просмотреть здесь.

Интересующиеся могут ознакомиться с исходным кодом анализатора. Использовать класс очень просто:

def cache = new File("conferences.xml")
def writer = new FileWriter(cache)
new Analyzer("jabber.ru", "lena1988", "pass").analyze(writer);
writer.flush()
writer.close()

, ,

No Comments

Контакт – обновление

Тип: основное

  • Восстановление пароля
  • Подсказки для новых пользователей
  • Много новых шрифтов для генерации изображения
  • Изменилась палитра для выбора цвета шрифта и фона
  • В качестве логина теперь принимается только адрес E-mail, который будет первым контактом в списке

Всем пользователям, зарегистрировавшимся ранее, следует пройти процедуру регистрации снова, так как теперь в качестве логина может быть только E-mail адрес.

Как и ранее, страница входа в систему доступна по адресу http://majus.name/contact/login.jsp

Если у вас есть предложения по добавлению каких-то шрифтов в список генерации изображения, свяжитесь со мной или добавьте комментарий здесь.

Желаю всего хорошего.

No Comments

Настройка ACORP W422G для Корбины

Потратив две недели на настройку модема, обсуждения на форумах Acorp, удалось наконец настроить этот модем для работы с провайдером Корбина.

Мне требовалось поднять VPN соединение Корбина на самом модеме и раздать интернет двум стационарным машинам по Ethernet и КПК по WiFi.

Скриншоты настроек под катом.

Read the rest of this entry »

1 Comment

Тернарный оператор

Что выведет этот код?

class Main {
   
    public static void main(String[] args) {
        System.out.println(get(1));
        System.out.println(get(null));       
    }
   
    public static Integer get(Integer in) {
        return true ? in : 0;
    }
}

1 Comment

Баг во Flash CS4

При реализации в AS3 подобия иерархии классов коллекций Java натолкнулся на интересную проблему:

// Set.as
package ru.majus.util
{  
    public interface Set
    {
        function put(o:*):Boolean;     
        function contains(o:*):Boolean;    
        function remove(o:*):void;     
        function size():uint;      
        function isEmpty():Boolean;    
        function clear():void;
    }  
}
// LinkedSet.as
package ru.majus.util
{
    public class LinkedSet implements Set
    {
        // ...

        private var _head:Item;
        private var _tail:Item;
    }  
}

class Item {
    // ...
}

При попытке компиляции выдавало веер ошибок (по одной на каждый реализованный метод):

1044: Interface method size in namespace ru.majus.util:Set not implemented by class ru.majus.util:LinkedSet.

Оказалось, проблема глобальная. Это баг в Flash CS4.
Решается переносом класса Item в отдельный файл. На форумах различных библиотек на AS3 уже появились сообщения о невозможности их использования на CS4.

,

No Comments

Контакт – обновление

Контакт

Тип: основное

  • Палитра для выбора цвета шрифта и фона
  • Возможность сглаживания шрифта
  • Возможность выбора конкретного размера шрифта от 10 до 32 пунктов
  • Проверка формата введенного контакта посредством ajax
  • Установка заголовка Content-Type для HTTP-ответа генератора изображения
  • Сброс кэша изображений для пользователя при внесении изменений в список контактов

Как и ранее, страница входа в систему доступна по адресу http://majus.name/contact/login.jsp

Желаю всего хорошего.

No Comments

Java и $

Мало кто знает, что в Java в идентификаторах допускается использование символа $ наряду с латинскими буквами, цифрами и сиволом подчеркивания. Потому следующий код синтаксически верный:

static int total$(int bank$[]) {
    int total$ = 0;
    for (int $ : bank$)
        total$ += $;
    return total$;
}

Интересующиеся могут просмотреть Java Language Specification, Third Edition (§3.8).

Знак доллара используется компилятором Java в именах внутренних и анонимных классов. Использовать этот знак в коде не рекоммендуется ни спецификацией ни мною.

No Comments

Что выведет этот код?

Простой код на знание порядка выбора метода из перегруженных вариантов.

public class VarArgs {
   
    public static void main(String[] args) {
        foo(0, 1);
        foo((int) 0, 1);
        foo((Integer) 0, 1);
    }

    public static void foo(int a, int b) {
        System.out.print("A");
    }

    public static void foo(int... args) {
        System.out.print("B");
    }

    public static void foo(Integer... args) {
        System.out.print("C");
    }

}

1 Comment