next up previous contents
Next: Общая схема работы и Up: Работа сервера приложений Previous: Общие вопросы   Contents

Ваше первое приложение в Jazz

Самый простой способ изучить систему - это написать свое первое простое приложение. Напишем прикладную систему, которая выводит окно с сообщением "hello, world".

В каталоге conf сервера приложений создаем файл hello.conf, в котором запишем следующий текст:

    
    [common]
    debug=1
    path=hello
    
    [database]

    [hosts]
    allow=127.0.0.1/32
    reject=

    [info]
    name=Hello App
    version=0.1
    author=Me
    release=2003

Таким образом мы определяем следующие параметры нашей системы:

Включен режим отладки (debug=1)
Сама система будет распологаться в каталоге impl/hello
Кпользованию системой допущен только компьютер 127.0.0.1
Информация о работе с БД не предоставляется.
Далее предоставляем серверу информацию о имени приложения, версии, авторе и годах разработки.

Далее в файле impl/__init__.py дописываем следующие строки:

	# Если даже загрузка системы прошла
	# неудачно, сервер не должен останавливаться.
	try:
		import hello
	except: pass

После этого в каталоге impl сервера необходимо создать каталог приложения hello и перейти в него. Дальнейшая работа будет производится в данном подкаталоге.

Создаются следующие файлы:

	__init__.py:

	# Этот метод вызывается единовременно
	# после подключения клиентского приложения
	# к системе
	# в нем можно прочитать конфигурационный файл,
	# установить соединение с БД и прочее.
	# как минимум необходимо вернуть xml-пакет для клиента
	# в котором содержится стартовое окно приложения

	# загрузить сервисные модули работы с xml
	import service
	from service.widget import *

	def run(serv):
	           # создаем окно с заголовком hello application
	           # и именем hello. Окно размером 200х200 и 
	           # отцентрованное по вертикали и горизонтали
	           # модальное без меню
	           a=window(caption='Hello application',name='hello',
	           	x='center',y='center',width='200',height=200,
	           	modal=1,no_menu=1)
	           # вертикальная "сетка", внутри которой будут
	           # расположены виджеты
	           h=a.addObj(hgrid(space=5,border=5))
	
	           # надпись
	           h.addObj(label(value='Hello, world :)'))
	           # ниже надписи - кнопка
	           h.addObj(button(name='helloPress',value='Click me',signal=1))
	           
	           # Вернуть клиенту xml-пакет
	           return a.getDoc()


	hello.py

	# данный метод будет вызван
	# при закрытии окна hello
	def close(serv):
		pass

	# событие hello.helloPress(serv)
	# будет вызвано при нажатии на кнопку
	def helloPress(serv):
		# просто выведем сообщение клиенту
		service.message('information',"!","Вы нажали на кнопку :)").show(serv)
		return

Вот собственно и весь текст вашего первого приложения "под jazz". Далее можно запустить kernel.py, клиентское приложение и увидеть результат При режиме debug=1 сервер будет останавливаться с выводом сообщения о ошибке и причине ее возникновения.



2004-12-28