2011-08-26 4 views
3

Теперь есть новое требование. У меня есть кое-какая работа. Требование состоит в том, чтобы подключить приложение Java на рабочем столе для чтения данных из мейнфрейма, сгенерированного некоторой транзакцией CICS. [В принципе, мне нужно прочитать все записи, добавляемые в файл (так же, как и имя файла хвоста f в linux). Это только для FYI, мое требование - это нечто иное.]Подключение к CICS из настольного приложения Windows

Я поинтересовался и узнал, что мой работодатель не может предоставить мне доступ к MQ или CICS Transaction Gateway. Он предложил какой-то метод скрипинга экрана. Я уже сделал это с помощью приложения VB.Net и Quick3270, а также IBM Communicator Emulators. Оба эти эмулятора предоставляют функции, которые можно использовать для чтения всего, что есть на экране.

Вы можете обратиться к программированию EHILLAPI (язык программирования эмулятора) - http://publib.boulder.ibm.com/infocenter/pcomhelp/v5r9/index.jsp?topic=/com.ibm.pcomm.doc/books/html/emulator_programming07.htm, если вы заинтересованы в обучении.

Но этот метод ограничивает меня максимальным количеством байтов, которое может появиться на экране. С помощью этого метода наблюдается значительная задержка сети, поскольку я должен обновлять (в основном, переходить с одной страницы на другую на CICS) каждый раз, чтобы получать данные, которые охватывают несколько страниц.

Можете ли вы предложить мне какой-либо метод, чтобы мой работодатель не требовал, чтобы клиент открыл любой порт на своем мэйнфрейме или установил любое программное обеспечение (поскольку это невозможно для моего работодателя).

Могу ли я использовать эмуляцию терминала 3270 и получить все (или, по крайней мере, больше данных). Таким образом, требование моего работодателя выполняется, и ему не нужно ничего спрашивать у своего клиента. (В любом случае из эмулятора мы запускаем транзакции CICS). Мы хотим, чтобы все было сделано на самом конце моего работодателя, не нарушая мэйнфрейм клиента даже на один бит.

Пожалуйста, не предлагайте MQ, так как клиент не имеет его.

Если вы все еще предлагаете CICS Transaction Gateway, то, пожалуйста, дайте мне знать, как я могу подключиться к удаленной машине (мне нужны технические детали).
- Какую информацию мне нужно задать у клиента.
- Какое программное обеспечение необходимо установить на моей машине. - Технические детали использования этого программного обеспечения.

С уважением,

Нитин

+0

Взгляните на http://www.jagacy.com/. Есть много продуктов, которые делают похожие вещи. –

+0

Возможно, вы захотите посмотреть на [эту тему] [1] для некоторых идей. [1]: http://stackoverflow.com/questions/5191632/which-is-proven-solution-to-connect-mainframe-and-java-which-is-best-in-mq- seri/5211623 # 5211623 – cschneid

ответ

2

У меня есть два предложения для Вас, чтобы посмотреть. Я сделал оба успешно. Ваша настройка клиента может решить, является ли она приемлемой (в вопросе не упоминается , а не).

  1. Вы можете вызвать свой код CICS на мэйнфрейме с помощью хранимой процедуры DB2. Существует стандартный, поставляемый IBM под названием EXECCICS, который мы использовали для проекта. Вы предоставляете стандартные параметры CICS и область связи. Хранимая процедура выполняет программу в мэйнфрейме и возвращает вам область связи. Вы используете JDBC. Это простое и простое решение.

  2. Мы также включили HTTP-доступ к программе CICS на мэйнфрейме. По моему пониманию (помните, я только что назвал его - не включен) это довольно стандартная конфигурация. Код клиента просто выполняет HTTP POST для определенной конечной точки. Итоговый документ - это область связи и другие лакомства.

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

+0

Привет, Кен, вы можете подтвердить, доступен ли HTTP-доступ по умолчанию или мне нужно запросить его у клиента? Если по умолчанию я могу попросить клиента предоставить мне. Я имею в виду, каков технический язык для него. –