вторник, 5 октября 2010 г.

JavaFX: Tower Defence конкурс

JavaFX: Tower Defence конкурс

Версия 1:
добавил новый тип Warrior - выходит из башни, бьет противника оружием (в самолетах есть авиа бомбы) и возвращается на базу.
Расширенный тип башни BaseTower - обладает зоной сканирования и возможностью апгрейда. Если противник попадает в эту зону, то выпускает воинов (количество воинов ограничено).

TODO:
Добавить свою графику и поменять компоновку главного окна, добавить эффекты.

Bugs:
При большом количестве сущностей JavaFX падает.
java.lang.AssertionError: bad slice data in on replace trigger
at javafx.scene.Parent.onReplace$children(Parent.fx:401)
либо ArrayOutOfIndex...

JavaFX - игровой движок.

Считалочка для Сына - один из уровней игры.
Пример компоновки и анимации.
P.S. был написан на javafx скрипте, но еще работает на 7 (сентябрь 2012)
TODO переписать под новую версию.

пятница, 4 декабря 2009 г.

Authorization: Digest

Task: Authorization with the Digest authentication to .NET webservice on IIS.
Trouble: cannot get wsdl

log:
Test connection: <200: ok="ok"> http://server.net/
Test connection: <200: ok="ok"> http://server.net/_vti_bin/DotNetWebservice.asmx
Test connection: <401: unauthorized="unauthorized"> http://server.net/_vti_bin/DotNetWebservice.asmx?WSDL

Found (after analyze of packets):
IE:
Authorization: Digest username="test", uri="/_vti_bin/DotNetWebservice.asmx", ....
Java:
Authorization: Digest username="test", uri="/_vti_bin/DotNetWebservice.asmx?WSDL",...

понедельник, 7 сентября 2009 г.

Использование нескольких Namespace вебсервисов на одной модели (eRoom 6-7)

Проблема: Необходимо использовать один из двух Namespace в JAXBContext с одним и тем же наборов классов, генерированных с помощью XJC по одной схеме (Schema).
Технологии: Metro: JAXB, JAX-WS.
Комментарий: Реально Схемы eRoom 6-7 версий отличаются, но на уровне кода это можно будет решить.
Решение:
Генерируем классы по одной из схем (eRoom 7) с помощью утилиты XJC.
В коде клиента:
Создаем JAXBContext по полученному ObjectFactory и с следующими свойствами: JAXBRIContext.DEFAULT_NAMESPACE_REMAP и JAXBRIContext.ANNOTATION_READER. Где ANNOTATION_READER будет переопределять Namespace, т.к. первого свойства недостаточного (исходящие конверты создаются "правильно", а вот входящий обрабатывается только тэг сервиса).
Service также создаем с необходимым Namespace.