2016-06-28 4 views
2

Мне нужно написать набор данных, отличный от VSAM, в мэйнфрейме. Я знаю, что нам нужно использовать библиотеку ZFile, чтобы это сделать, и я нашел, как это сделать. hereJSR 352: Как вы пишете в набор данных MVS из пакетной программы Java?

Я запускаю свое пакетное задание Java в WebSphere Liberty на zOS. Как указать набор данных? Могу ли я напрямую указать DataSet такое имя?

dsnFile = new ZFile("X.Y.Z", "wb,type=record,noseek");

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

Я относительно новичок в мире zOS и мэйнфреймов.

ответ

2

Похоже, вы могли бы попросить более подробно использовать API-интерфейс ZFile на WebSphere Liberty на z/OS.

Вы пробовали что-то вроде:

String pdsName = ZFile.getSlashSlashQuotedDSN("X.Y.Z"); 
    ZFile zfile = new ZFile(pdsName , ...options...) 

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

Вы также можете найти некоторые полезные snipopets в этом doctorbatch.io repo, а также оригинальную ссылку, которую вы опубликовали.

Для справки, я буду копировать/вставить из ZFile Javadoc:

ZFile dd = new ZFile("//DD:MYDD", "r"); 

Opens the DD namee MYDD for reading 

ZFile dsn = new ZFile("//'SYS1.HELP(ACCOUNT)'", "rt"); 

Opens the member ACCOUNT from the PDS SYS1.HELP for reading text records 

ZFile dsn = new ZFile("//SEQ", "wb,type=record,recfm=fb,lrecl=80,noseek"); 

Opens the data set {MVS_USER}.SEQ for sequential binary writing. Note that ",noseek" should be specified with "type=record" if access is sequential, since performance is greatly improved. 

одно замечание, еще несколько полезных ZFile вспомогательные методы: bpxwdyn() и getFullyQualifiedDSN().

Смежные вопросы