Mateo Stjepanović’s Java Features from Java 8 to Java 17

I just came across Mateo Stjepanović blog item called: Java Features from Java 8 to Java 17
https://reflectoring.io/java-release-notes/

It is very handy when you are trying to write backward-compatible code.

Regards,
Roger Lacroix
Capitalware Inc.

Java, JMS, Linux, macOS (Mac OS X), Programming, Raspberry Pi, Unix, Windows Comments Off on Mateo Stjepanović’s Java Features from Java 8 to Java 17

IBM TechCon 2022

IBM has announced IBM TechCon 2022. It will be a virtual conference running on April 5th – 7th, 2022. You can register here.

This event brings together all our AIOps, IT automation, integration, and application platform domain expertise. TechCon 2022 will be held April 5 – 7 as an interactive virtual experience with access to the top minds in IBM Automation. Kicking off the event we will have a Tech industry executive provide some insights from real world experience.

Regards,
Roger Lacroix
Capitalware Inc.

Education, HPE NonStop, IBM i (OS/400), IBM MQ, IBM MQ Appliance, Linux, Programming, Unix, Windows, z/OS Comments Off on IBM TechCon 2022

Capitalware halts product sales to Russian Companies

Effective immediately, Capitalware has halted all product sales to Russian companies and Russian individuals. The online shopping cart has been disabled for Russian companies and individuals and we will no longer directly accept POs (Purchases Orders) from Russian companies or resellers on behalf of Russian companies.

Capitalware stands with the people of Ukraine

I have also updated the header image of Capitalware’s web site to include the colors of the Ukraine flag.
Ukraine
Regards,
Roger Lacroix
Capitalware Inc.

Capitalware Comments Off on Capitalware halts product sales to Russian Companies

IBM MQ V9.2.5 Announced

IBM has announced IBM MQ V9.2.5:
https://community.ibm.com/community/user/integration/blogs/ian-harwood1/2022/02/03/mq925ga

Highlights:

MQ 9.2.5:

  • – IBM MQ native HA is now available to deploy in containers on Kubernetes
  • – REST Messaging API enhancements
  • – Security enhancements
  • MQ for z/OS 9.2.5:

  • – z/OS 64-bit RBA (Relative Byte Address) by default
  • – Java 11 support
  • MQ Appliance 9.2.5 firmware:

  • – Encrypted storage for queue manager data
  • – Rename or validate a queue manager certificate
  • Planned availability for IBM MQ V9.2.5 is March 18, 2022 for Electronic software delivery.

    IBM MQ (aka WebSphere MQ) homepage
    https://www.ibm.com/products/mq

    Regards,
    Roger Lacroix
    Capitalware Inc.

    Fix Packs for MQ, IBM i (OS/400), IBM MQ, IBM MQ Appliance, Linux, Unix, Windows, z/OS Comments Off on IBM MQ V9.2.5 Announced

    IBM MQ Fix Pack 9.2.0.5 Released

    IBM has just released Fix Pack 9.2.0.5 for IBM MQ V9.2 LTS:
    https://www.ibm.com/support/pages/downloading-ibm-mq-9205

    Regards,
    Roger Lacroix
    Capitalware Inc.

    Fix Packs for MQ, IBM i (OS/400), IBM MQ, IBM MQ Appliance, Linux, Unix, Windows Comments Off on IBM MQ Fix Pack 9.2.0.5 Released

    Capitalware Products Listed at LinkedIn

    The other day, MQGem posted a blog item about a new feature at LinkedIn where a company can list their products.

    I’ve have created a LinkedIn page for Capitalware and then added all 17 commercial products that Capitalware sells. You can view the entire list of Capitalware products at https://www.linkedin.com/company/capitalware/products/ page.

    The interesting feature that LinkedIn added for users is the ability to add a product skill to your profile. To add a skill, simple go to Capitalware’s LinkedIn product page and click on the + Add as skill  button to include it in your profile. Its that easy.

    Regards,
    Roger Lacroix
    Capitalware Inc.

    Capitalware, Education, IBM i (OS/400), IBM MQ, Linux, MQ Auditor, MQ Authenticate User Security Exit, MQ Channel Connection Inspector, MQ Channel Encryption, MQ Channel Throttler, MQ Enterprise Security Suite, MQ Message Compression, MQ Message Encryption, MQ Message Replication, MQ Standard Security Exit, Unix, Windows, z/OS Comments Off on Capitalware Products Listed at LinkedIn

    Explanation of Parameters in an IniFile of Capitalware Products

    I have a new customer who is having a problem understanding parameters and relations of parameters in the IniFile (initialization file aka configuration file).

    By no means am I taking a shot or putting down or marking fun of the customer. When English is not your first language and a new user is trying to read and understand English documentation, it is a difficult task for them.

    I’ll use MQ Auditor on Linux as the example since that is the product they are having issues with but most of the following can be applied to any other back-end Capitalware product.

    The customer was trying to setup MQ Auditor for use with the MQ MI (aka MQ HA) setup. They were trying to use the same path for everything.

    For all Capitalware back-end products (i.e. exits), I have created and used defaults paths and filenames, so that the end-user can install and get up and running in 12-15 minutes. Once they get a feel for the product, they then can tailor it to fit into their MQ environment.

    Things to remember:

    1. The location of the shared-library (Unix/Linux), Exit Module (IBM i) or DLL (Windows) has absolutely no bearing on any other parameter but the 32-bit and 64-bit libraries must be in separate directories (folders).
    2. The location of the IniFile has absolutely no bearing on any other parameter.
    3. The name of the IniFile (I did not say ‘mqa.ini’) has absolutely no bearing on any other parameter.
    4. The location of the Audit directory has absolutely no bearing on any other parameter.
    5. The location of the Archive directory has absolutely no bearing on any other parameter.
    6. The location of the LogFile has absolutely no bearing on any other parameter.
    7. The name of the LogFile (I did not say ‘mqa.log’) has absolutely no bearing on any other parameter.
    8. The location of the ExitPath has absolutely no bearing on any other parameter

    The following is a valid setup for MQ Auditor on Linux:

    (1) MQ Auditor can be installed in: /opt/Capitalware/MQA/exits/ and /opt/Capitalware/MQA/exits64/ rather than the default directories of /var/mqm/exits/ and /var/mqm/exits64/.

    i.e. the queue manager’s qmi.ini file:

    ExitPath:
       ExitsDefaultPath=/opt/Capitalware/MQA/exits:/var/mqm/exits
       ExitsDefaultPath64=/opt/Capitalware/MQA/exits64:/var/mqm/exits64

    (2 & 3) The IniFile name will be ‘mqlt1.ini‘ (rather than ‘mqa.ini’, the default name) because the queue manager is called MQLT1 and I want to associate the filename with the queue manager name. The location of the IniFile will be /roger/loves/lasagna/ directory rather than the default directory of /var/mqm/exits64/.
    i.e. the queue manager’s qmi.ini file:

    ApiExitLocal:
       Sequence=1
       Name=MQA
       Function=EntryPoint
       Module=mqa
       Data=/roger/loves/lasagna/mqlt1.ini

    As I have documented in the MQ Auditor Installation and Operation manual, the value for the Data parameter cannot exceed a length of 32 characters. This is an explicit IBM MQ requirement. I get emails all the time asking me to increase the length but I cannot because IBM is responsible for this feature/restriction.

    The same restriction applies to Exit Data fields for channels. i.e. SecurityUserData, MsgUserData, SendUserData, ReceiveUserData, etc. Now, if I had a bone to pick with IBM, it would be, why did you make the Exit fields a length of 128 characters but limit the corresponding Exit Data field to only 32 characters. Why didn’t you make them both the same length? It is just one of those quirks in IBM MQ that you need to remember.

    (4) The Audit directory can be /some/file/system/with/lots/of/room/ rather than the default directory of /var/mqm/audit/.
    i.e. in the IniFile aka mqlt1.ini

    AuditPath=/some/file/system/with/lots/of/room/

    (5) The Archive directory can be /holy/cow/this/is/really/really/huge/ rather than the default directory of /var/mqm/audit/archive/.
    i.e. in the IniFile aka mqlt1.ini

    AuditArchivePath=/holy/cow/this/is/really/really/huge/

    (6 & 7) The LogFile name will be ‘mqlt1.log‘ because the queue manager is called MQLT1 and I want to associate the log file with the queue manger rather than use the default filename of ‘mqa.log’. Hence, the location will be /roger/hates/liver/and/bloodpudding/ rather than the default directory of /var/mqm/audit/.
    i.e. in the IniFile aka mqlt1.ini

    LogFile=/roger/hates/liver/and/bloodpudding/mqlt1.log

    (8) The ExitPath directory will be where the 64-bit shared-library files are stored. i.e. from above in # 1: /opt/Capitalware/MQA/exits64/ rather than the default directory of /var/mqm/exits64/.
    i.e. in the IniFile aka mqlt1.ini

    ExitPath=/opt/Capitalware/MQA/exits64/

    The ExitPath parameter will be used by MQ Auditor as the default “home directory“. What do I mean by that? Lets say you don’t want to explicitly set the LogFile’s path and filename. You just want to specify the filename.
    i.e. in the IniFile aka mqlt1.ini

    LogFile=mqlt1.log

    So, MQ Auditor will prefix the value for ExitPath to the LogFile value to create a fully qualified path and filename.

    Hopefully, this will help new and existing customers who are using Capitalware’s back-end products to feel more confident in their usage.

    Regards,
    Roger Lacroix
    Capitalware Inc.

    Capitalware, IBM i (OS/400), IBM MQ, MQ Auditor, MQ Authenticate User Security Exit, MQ Channel Connection Inspector, MQ Channel Encryption, MQ Channel Throttler, MQ Enterprise Security Suite, MQ Message Compression, MQ Message Encryption, MQ Message Replication, MQ Standard Security Exit, Unix, Windows, z/OS Comments Off on Explanation of Parameters in an IniFile of Capitalware Products

    Reasons to run Java on your IBM Z Mainframe

    Wayne Bucek of IBM has created and posted a video on running Java on the mainframe (z/OS) titled: “Reasons to run Java on your IBM Z Mainframe

    Regards,
    Roger Lacroix
    Capitalware Inc.

    Java, JMS, Programming, z/OS Comments Off on Reasons to run Java on your IBM Z Mainframe

    Idea: Make IBM MQ for Windows on ARM available

    I have posted an “IBM idea” called: Make IBM MQ for Windows on ARM available.

    If you are interested in it, please add your vote/comment to it.

    Regards,
    Roger Lacroix
    Capitalware Inc.

    C, C#, C++, IBM MQ, Java, JMS, Operating Systems, Programming, Windows Comments Off on Idea: Make IBM MQ for Windows on ARM available

    Updated SimpleLogger Class

    The other day, someone emailed me and asked if I could add code to externalize the default values used by the SimpleLogger Class. I thought about it and figured it would be reasonably straight forward.

    Hence, here are the JVM Environment variables that the SimpleLogger Class supports:

    • SimpleLogger.LogFileName – any valid file name
    • SimpleLogger.LogDirectory – any valid local directory
    • SimpleLogger.IncludePackageName – valid values are: true or false
    • SimpleLogger.LogLevel – valid values are: debug, info, warn or error
    • SimpleLogger.MaxBackupFiles – any valid integer
    • SimpleLogger.MaxFileSize – any valid integer
    • SimpleLogger.LogRotationType – valid values are: daily or size

    I also added a new setLogFile method that takes no paramteres.

    I have generated the JavaDocs for the SimpleLogger class and created a JAR file for SimpleLogger for users to use. I zipped up the JavaDocs, JAR file and the source code for both Test_SimpleLogger.java program and SimpleLogger.java. You can download the it from here.

    Simply add the SimpleLogger JAR file to your application or add the SimpleLogger source code to your utility (or handler) package of your application and then start using it.

    Regards,
    Roger Lacroix
    Capitalware Inc.

    Capitalware, HPE NonStop, IBM i (OS/400), Java, JMS, Linux, macOS (Mac OS X), Open Source, Programming, Raspberry Pi, Unix, Windows Comments Off on Updated SimpleLogger Class