Greetings,  If you are interested in running Tomcat on IBM i, please
   review the document on developer works.  The details on how to set the JVM
   are listed there.
   [1]
http://www.ibm.com/developerworks/ibmi/library/i-websolution-asf-tomcat/
   Tim
   Tim Rowe, timmr@xxxxxxxxxx
   Business Architect Application Development & Systems Management for IBM i
   IBM i Development Lab, Rochester, MN
   (507) 253-6191 (Tie) 553-6191
   
http://www-03.ibm.com/systems/power/software/i/are/index.html
     ----- Original message -----
     From: midrange-l-request@xxxxxxxxxxxx
     Sent by: "MIDRANGE-L" <midrange-l-bounces@xxxxxxxxxxxx>
     To: midrange-l@xxxxxxxxxxxx
     Cc:
     Subject: MIDRANGE-L Digest, Vol 14, Issue 1509
     Date: Thu, Oct 22, 2015 6:43 AM
     Send MIDRANGE-L mailing list submissions to
     midrange-l@xxxxxxxxxxxx
     To subscribe or unsubscribe via the World Wide Web, visit
     [2]
http://lists.midrange.com/mailman/listinfo/midrange-l
     or, via email, send a message with subject or body 'help' to
     midrange-l-request@xxxxxxxxxxxx
     You can reach the person managing the list at
     midrange-l-owner@xxxxxxxxxxxx
     When replying, please edit your Subject line so it is more specific
     than "Re: Contents of MIDRANGE-L digest..."
     *** NOTE: When replying to this digest message, PLEASE remove all text
     unrelated to your reply and change the subject line so it is meaningful.
     Today's Topics:
        1. Re: SQL Pre-compiler Issue (John Yeung)
        2. changing java version from 1.6 to 1.7 or 1.8 (tim)
        3. Re: 5761JV1 download from ESS not there (tim)
        4. Re: SQL Pre-compiler Issue (CRPence)
        5. DB2 RI, trigger, validation, etc and record level access and
           SQL and/or ODBC. (Wilson, Jonathan)
        6. RE: systools. group_ptf_currency Secuirty Concern Responses
           (rob@xxxxxxxxx)
     ----------------------------------------------------------------------
     message: 1
     date: Thu, 22 Oct 2015 01:24:56 -0400
     from: John Yeung <gallium.arsenide@xxxxxxxxx>
     subject: Re: SQL Pre-compiler Issue
     On Wed, Oct 21, 2015 at 4:52 PM, CRPence <crpbottle@xxxxxxxxx> wrote:
     > On 21-Oct-2015 10:10 -0500, John Yeung wrote:
     >> From where I'm sitting, it feels like the compilation (of correct
     >> *syntax*) should either (1) always succeed whether or not the file
     >> is found, and if there's a runtime error, so be it; or (2) never
     >> succeed when the file is not found.
     >
     >   While those absolutes might fit, in a /logical/ sense, they tend not
     to
     > fit, in a /practical/ sense.  Perhaps strangely, most people are
     > [begrudgingly] joyful when the pre-compiler diagnoses that their
     reference
     > is problematic.  That although they may have to make changes to their
     > source, and then issue the pre-compile request again, they usually
     have
     > fared better than if they had only learned of the likely failure
     *after*
     > they also ran their test suite.  In the end, they have saved possibly
     huge
     > amounts of time.
     Well, on the face of it, all you've said is that "static compile-time
     checking can save potentially huge amounts of time". Fine. I don't
     think anyone could sensibly argue against that. I wouldn't want to
     give that up (given that my code is embedded in RPG). My proposed
     behavior (2) *doesn't* give it up. Maybe that wasn't clear.
     Maybe I need to state it in different terms: I believe that a missing
     reference should be treated roughly the same as a
     found-but-assumed-erroneous reference. (So if you want to be
     permissive, then be permissive with all references; if you want to be
     strict, then be strict with all references.)
     I don't see how my proposed behavior (2) is any less practical than
     what you've described. Unless you are saying that in practice, missing
     references are overwhelmingly NOT errors in real-world code, and that
     putting the onus on the programmer to either ensure the reference
     exists or explicitly choose a higher GENLVL is somehow unreasonably
     onerous.
     John Y.
     ------------------------------
     message: 2
     date: Thu, 22 Oct 2015 02:12:56 -0400
     from: tim <iseriesstuff@xxxxxxxxx>
     subject: changing java version from 1.6 to 1.7 or 1.8
     i installed java 1.7 and 1.8. When i do java *version i get the
     following. I also have Tomcat 7 which i would like to point to the newer
     version of java.
     How does this value know to use 1.6? i dont see anything under WRKENVVAR
     and i dont see a properties file.
     java version "1.6.0"
     Java(TM) SE Runtime Environment (build pap3260sr16fp2-20141026_01(SR16
     FP2))
     IBM J9 VM (build 2.4, JRE 1.6.0 IBM J9 2.4 OS/400 ppc-32
     jvmap3260sr16fp2-20141026_01 (JIT enabled, AOT enabled)
     J9VM - 20141010_216764
     JIT  - r9_20140523_64469ifx2
     GC   - GA24_Java6_SR16_20141010_1202_B216764)
     JCL  - 20141005_01
     Java program completed
     ------------------------------
     message: 3
     date: Thu, 22 Oct 2015 02:13:46 -0400
     from: tim <iseriesstuff@xxxxxxxxx>
     subject: Re: 5761JV1 download from ESS not there
     worked perfect. Thank you. Just need to figure out how to point system
     to new java version.
     On 10/21/2015 10:10 PM, Pete Helgren wrote:
     > Just posted this on my blog for the same reason.  I am on 7.2 but the
     > drill is the same:
     >
     > [3]
http://www.petesworkshop.com/blog_wp/?p=193
     >
     > Basically: It's part of the base OS:  5770-SS1 in my case.  Drill all
     > the way down to find out you have to download the latest 5770-SS1 DVD
     > and install from there.
     >
     > Not exactly intuitive..
     >
     > Pete Helgren
     > www.petesworkshop.com
     > GIAC Secure Software Programmer-Java
     >
     >
     > On 10/21/2015 4:39 PM, tim wrote:
     >> Im trying to download 5761JV1 options 14-17, but i dont even see this
     >> product listed on the screen. When i google how to download it, it
     >> points me back to ESS. Any idea what i need to do to get this? We are
     >> on v7.1.
     >
     ------------------------------
     message: 4
     date: Thu, 22 Oct 2015 03:59:21 -0500
     from: CRPence <crpbottle@xxxxxxxxx>
     subject: Re: SQL Pre-compiler Issue
     On 22-Oct-2015 00:24 -0500, John Yeung wrote:
     > On Wed, Oct 21, 2015 at 4:52 PM, CRPence wrote:
     >> On 21-Oct-2015 10:10 -0500, John Yeung wrote:
     >>> <<SNIP>>
     >>> From where I'm sitting, it feels like the compilation (of
     >>> correct *syntax*) should either (1) always succeed whether or not
     >>> the file is found, and if there's a runtime error, so be it; or
     >>> (2) never succeed when the file is not found.
     >>
     >> <<SNIP>>
     >> While those absolutes might fit, in a /logical/ sense,
     >> they tend not to fit, in a /practical/ sense.  Perhaps strangely,
     >> most people are [begrudgingly] joyful when the pre-compiler
     >> diagnoses that their reference is problematic.  That although they
     >> may have to make changes to their source, and then issue the
     >> pre-compile request again, they usually have fared better than if
     >> they had only learned of the likely failure *after* they also ran
     >> their test suite.  In the end, they have saved possibly huge
     >> amounts of time.
     >
     > Well, on the face of it, all you've said is that "static
     > compile-time checking can save potentially huge amounts of time".
     > Fine. I don't think anyone could sensibly argue against that. I
     > wouldn't want to give that up (given that my code is embedded in
     > RPG). My proposed behavior (2) *doesn't* give it up. Maybe that
     > wasn't clear.
        That was clear.  Seems I did not cover that, because in an attempt at
     being more succinct I omitted some background from a prior attempt at
     replying; I ended up giving up on that draft, as the text had become
     unwieldy.  Unfortunately my unwritten _thoughts_ are not easily conveyed
     in this medium ;-)
     >
     > Maybe I need to state it in different terms: I believe that a
     > missing reference should be treated roughly the same as a
     > found-but-assumed-erroneous reference. (So if you want to be
     > permissive, then be permissive with all references; if you want to
     > be strict, then be strict with all references.)
     >
     > I don't see how my proposed behavior (2) is any less practical than
     > what you've described. Unless you are saying that in practice,
     > missing references are overwhelmingly NOT errors in real-world code,
        I made mention of, in my above reply [though that part was snipped],
     of my acceptance of and there being "the apparent rationale behind the
     choice to ignore the missing-references, whilst not ignoring those
     located-references for which the validity checking fails."
        Specifically to what that "rationale behind the choice to ignore the
     missing-references" portion alludes, is that for the SQL [this, from my
     ditched attempt at replying]:
     "... the typical expectation for a reference /not found/ is that
     eventually, the object will exist; that is to suggest, that typically
     for a -204, the likely reaction within the program is the respective
     CREATE statement.  Arguably the SQL has the ALTER as well for which a
     revision could occur, thus similarly the SQL could infer that such
     changes are possible, but only by overlooking the relative infrequency
     [of /altered/ as compared to /created new/ as dealt with in the same
     program source]."
        Essentially then [also from my ditched draft], I somewhat
     repetitively offer, what is the presumption for handling
     missing-references vs the presumption for handling located-references:
     "  So anyhow the SQL has decided that, if a reference is found, then
     that reference will be used to perform the validity checking; presuming
     the object is persistent and thus validation is appropriate.  If the
     reference is not found, then the statement will only be syntax checked;
     presuming the object is temporal and the intention of the program must
     be that the object will be created when required.  If there are errors
     with the found\validated reference, then the errors will be overlooked
     according to a GENLVL specification suggesting to ignore the error."
        Specifically with regard to [again, from my ditched draft] the much
     rarer "scenario of a program needing to operate in [and thus compile in]
     effectively the simultaneous dual-world-view of both past and present
     [or present and future], is just not something that is very typical, and
     is something easily overcome [...] by upping the severity-level (GENLVL)
     allowed, so as to still pass the generated HLL code to the HLL compiler
     [which for the OP, apparently that is non-functional], or overcome by
     use of dynamic SQL, or overcome by ensuring the references are not found
     and thus not validity-checked.  Important point about overcoming, is
     that the default behavior ensures that validity-checking failures will
     fail the compile; i.e. so as to please the most, [whereas] the few will
     have to overcome the difficulty in their atypical situation" [the
     "atypical situation" referring to the altered\incompatible vs missing
     TABLE-reference.
     > and that putting the onus on the programmer to either ensure the
     > reference exists or explicitly choose a higher GENLVL is somehow
     > unreasonably onerous.
     >
        By intent, considered "unreasonably onerous" for the presumed-common
     missing-references scenario, but considered not so onerous for the
     presumed-much-rarer altered-reference scenario whereby the program
     references both a post-ALTER version of a TABLE and a pre-ALTER version
     of that TABLE.
        FWiW, ALTER activities are usually done in entirely unrelated
     phase(s) from the normal run-time; i.e. during upgrades to the
     application.  That alone makes them rarer.  Often, the ALTER is all that
     is done, thus implying that a validity-checked statement occurring for
     both the down-level\pre-altered table and the up-level\post-altered
     table would be rarer still.  On occasion however, the upgrade feature
     itself must perform both the ALTER and then an UPDATE [or some other
     statement(s)] against the altered TABLE to /finish/ the upgrading of the
     TABLE to the matching\present level of the new application run-time that
     will have been compiled to\against the up-level vs the down-level
     objects; probably most of these will encounter a validation error, but
     not all would, because some altered tables will remain compatible with
     whatever are the other statement(s) performed with\against that altered
     table.
        Also FWiW, I acknowledged in a separate post in the thread, that the
     SQL pre-compiler could in theory be modified /to look for/ and ignore
     failed validity-checks for any file that was named also in an embedded
     ALTER.  I was hesitant to suggest that would be something to pursue as a
     design change, thinking that [esp. due to the rarity but also], that
     idea as implementation might end up being described as the proverbial
     /opening of a can of worms/; though mostly that reflects my not having
     given the idea much thought.
     --
     Regards, Chuck
     ------------------------------
     message: 5
     date: Thu, 22 Oct 2015 12:17:26 +0100
     from: "Wilson, Jonathan" <piercing_male@xxxxxxxxxxx>
     subject: DB2 RI, trigger, validation, etc and record level access and
     SQL and/or ODBC.
     I am currently working on a service program handling data access, in its
     most simplistic form it has gets, returning data structures, and I am
     now working on the Put side of things.
     I am thinking along the lines of the service program first sending *diag
     messages to the caller, followed by an *escape denoting a hard error.
     Something along the lines of:
     SRVPGM_CustomerIsValid - procedure
          if Customer.Name = *blanks
               QMHSNDPM - Name is invalid - *diag.
               IsError = *on
          endif
          etc...
          if IsError
              QMHSNDPM - Record is invalid - *escape
          endif
     SRVPGM_CustomerIsValid - end procedure
     I know this works, handling the errors and relaying them to the display
     is still to be worked on (1), and performs the task well.
     I also know I can add tests to the DB using referential integrity and
     also additional trigger-before testing and even something as simple as
     duplicate key checking.
     >From what I can make out, correct me if I'm wrong, any testing in the
     DB
     is done one by one till either it passes all the tests (and performs the
     record update/add), or if an error is raised then any following, yet to
     be checked, tests are not performed - it stops dead.
     Also, again correct me if I'm wrong, if a file has 2 or more RI's and
     none of them are valid then only the first fail is logged, the
     outstanding RI's are not checked.
     >From looking at ODBC (and I assume embedded SQL and CLI SQL) not only
     is
     an error/current status returned but also its possible to return a
     varying list of diagnostic messages.
     Now my questions are:
     1) if I were to move the validation into the DB as a
     before-record-trigger (or some other method) could I use the same "idea"
     of sending *diags followed by an exception, and if I can does this
     information get sent to the ILE performing the update so I can do
     something along the lines of:
     monitor
         write Record
     on-error
         get exception error (QMHRCVM)
         if exception = my exception
              get all *diags (QMHRCVM)
              display/condition fields on screen according to messages
         else
              handle DB exceptions such as "duplicate key" or "RI" etc.
         endif
     endmon
     2) if the above is valid, does the same hold true if I use embedded SQL,
     can I receive the exception and the diags and handle them.
     3) again if the above is valid, does it also hold true of CLI SQL on the
     i.
     4) finally, are the diags and exception available to an application that
     doesn't reside on the i (pc-app) or is native but not ILE (say via pase
     or the like) - such as a ODBC - Java - C#
     The main reason for asking the above is that while I know I can handle
     things in a "normal" ILE/RPG/*SRVPGM validation program I don't want to
     back myself into a corner and find that the next stage of ideas to test
     just won't work. Obviously I'm designing with an eye to moving onto to
     the next logical progression, but if that progression is not going to
     work then there seems little point in designing with a forward view
     (which won't work) and it would be better to design for "this works
     really well in this scenario" and look at something totally different
     for the next stage of DB constraints and tests.
     Has anyone else done something similar?
     Thanks in advance
     Jon.
     (1) I had initially thought about somehow passing back an array with
     indicators denoting the field in error, but while this would work in a
     simple all ILE program it fails if at some point the code is put into
     the DB.
     ------------------------------
     message: 6
     date: Thu, 22 Oct 2015 07:43:10 -0400
     from: rob@xxxxxxxxx
     subject: RE: systools. group_ptf_currency Secuirty Concern Responses
     There is just too much data a modern server has to get on a timely basis
     from the internet to be isolated from contacting the internet.  Serving
     the internet may be a different matter.
     - The IBM PTF service is one.
     - Any number of web services is another.  For example, a service which
     constantly gets commodity prices from your broker might be used in
     extremely frequent updates, if not on a transaction basis.  (We used to
     sell wire and the price was based on the commodity price of copper rod.)
     I'll warrant to say there is much customer data on numerous "clients"
     around your business.  Down to that spreadsheet on someone's laptop.
      The
     one with the most data is the one most likely to access the internet.
     This
     last argument is too logical and will be lost on the security people.
     Stick to the first paragraph and document individual needs.
     Rob Berendt
     --
     IBM Certified System Administrator - IBM i 6.1
     Group Dekko
     Dept 1600
     Mail to:  2505 Dekko Drive
               Garrett, IN 46738
     Ship to:  Dock 108
               6928N 400E
               Kendallville, IN 46755
     [4]
http://www.dekko.com
     From:   "Krill, Coy" <CKrill@xxxxxxxxxxx>
     To:     "Midrange Systems Technical Discussion"
     <midrange-l@xxxxxxxxxxxx>
     Date:   10/21/2015 03:37 PM
     Subject:        RE: systools. group_ptf_currency Secuirty Concern
     Responses
     Sent by:        "MIDRANGE-L" <midrange-l-bounces@xxxxxxxxxxxx>
     They opened port 80 on the firewall so that the SQL view in IBM i can
     consume an xml document at www-912.ibm.com. Generally they are
     preventing
     any server, particularly ones with customer data from being able to
     access
     anything on the internet directly. We have it open to connect to ECS but
     that's over HTTPS and VPN, so there was less concern about that
     originally. We have the same AD and Websense stuff going on and often
     have
     to reboot as well to get access restored even on the local network.
     Coy Krill
     Core Processing Administrator/Analyst
     Washington Trust Bank
     -----Original Message-----
     From: MIDRANGE-L [[5]mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf
     Of
     rob@xxxxxxxxx
     Sent: Wednesday, October 21, 2015 04:32
     To: Midrange Systems Technical Discussion
     Subject: RE: systools. group_ptf_currency Secuirty Concern Responses
     Importance: Low
     Exactly what did they have to open on the internet?  Did you just have
     to
     open access to port 80 from your IBM i?  Or did you have to allow
     certain
     ports from the internet to get to your IBM i?  I'm pretty sure that you
     only have to allow your IBM i to get to port 80.  Because all of our IBM
     i
     lpars can use this new function and very few of them have any access TO
     them FROM the internet.  Do they restrict who can get to the internet by
     IP address and stuff to limit time wasting and stuff?  Here, we have a
     setting in Windows Active Directory which says whether or not a user can
     use the internet for http.  Those who do access the internet for http
     have
     all traffic monitored (and restricted) by WebSense.  In general they
     block
     porn, gambling and sites known to be hacks.  Sometimes it goes crazy and
     I
     have to reboot my PC.
     Sometimes I have to get permission to access a site which I know to be
     valid but is blocked for some reason by WebSense.  Perhaps this is just
     your companies process.  Rarely, if ever, am I denied.
     Rob Berendt
     --
     IBM Certified System Administrator - IBM i 6.1 Group Dekko Dept 1600
     Mail
     to:  2505 Dekko Drive
               Garrett, IN 46738
     Ship to:  Dock 108
               6928N 400E
               Kendallville, IN 46755
     [6]
http://www.dekko.com
     From:   "Krill, Coy" <CKrill@xxxxxxxxxxx>
     To:     "Midrange Systems Technical Discussion"
     <midrange-l@xxxxxxxxxxxx>
     Date:   10/20/2015 05:29 PM
     Subject:        RE: systools. group_ptf_currency Secuirty Concern
     Responses
     Sent by:        "MIDRANGE-L" <midrange-l-bounces@xxxxxxxxxxxx>
     Ordering PTFS via SNDPTFORD goes over a VPN or other secure channel to
     IBM. IBM has the request for the systools view go out of regular
     internet
     channels. We get our CUM packages from our main software vendor as they
     vet them for their software and add additional PTFs when necessary for
     their software to work. I generally order the Java, HTTP, Security and
     HIPER group packages monthly (and sometimes others depending on the
     situation). I was looking at using the systools view to have an easily
     accessible tool that can tell me what I can order that I don't already
     have installed or waiting to apply. I don't generally compare individual
     PTFs, just the groups.
     Coy Krill
     Core Processing Administrator/Analyst
     Washington Trust Bank
     -----Original Message-----
     From: MIDRANGE-L [[7]mailto:midrange-l-bounces@xxxxxxxxxxxx] On Behalf
     Of
     Jack Kingsley
     Sent: Tuesday, October 20, 2015 12:34
     To: Midrange Systems Technical Discussion
     Subject: Re: systools. group_ptf_currency Secuirty Concern Responses
     Importance: Low
     How are you downloading and installing fixes.  Do you have to remote
     query
     IBM to do your local compare for PTF's.
     On Tue, Oct 20, 2015 at 3:04 PM, Krill, Coy <CKrill@xxxxxxxxxxx> wrote:
     > I had our network folks open the firewall so that our Production, Test
     > and DR machines could access
     >
     [8]
http://www-912.ibm.com/s_dir/sline003.nsf/PSPbyNumL.xml?OpenView&count
     > =500 and have the systools.group_ptf_currency view work properly.I've
     > now been requested to meet with our security folks regarding this
     > request.
     >
     > I assume that they are going to have security concerns and are
     > potentially looking to block this site again. Has anyone had to
     > respond to any inquiries from security or auditors regarding loading
     > the xml table from IBM? It seems pretty innocuous to me, but perhaps
     > I'm missing something larger but in any case I'd like to be prepared
     > to assuage any security concerns as I would really like to use this
     > view rather than having to compare a 5250 screen to a webpage every
     month.
     >
     > Coy Krill
     > Core Processing Administrator/Analyst
     > Washington Trust Bank
     >
     >
     >
     > ---------------------------------------------------------------------
     > This electronic mail message and any attachments may contain
     > confidential or privileged information and is intended for use solely
     > by the above-referenced recipient. Any review, copying, printing,
     > disclosure, distribution, or other use by any other person or entity
     > is strictly prohibited under applicable law. If you are not the named
     > recipient, or believe you have received this message in error, please
     > immediately notify the sender by replying to this message and delete
     > the copy you received
     >
     > ---------------------------------------------------------------------
     >
     > --
     > This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
     > list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
     > unsubscribe, or change list options,
     > visit: [9]
http://lists.midrange.com/mailman/listinfo/midrange-l
     > or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take
     > a moment to review the archives at
     > [10]
http://archive.midrange.com/midrange-l.
     >
     >
     --
     This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
     list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
     unsubscribe, or change list options,
     visit: [11]
http://lists.midrange.com/mailman/listinfo/midrange-l
     or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please take a
     moment to review the archives at
     [12]
http://archive.midrange.com/midrange-l.
     ---------------------------------------------------------------------
     This electronic mail message and any attachments may contain
     confidential
     or privileged information and is intended for use solely by the
     above-referenced recipient. Any review, copying, printing, disclosure,
     distribution, or other use by any other person or entity is strictly
     prohibited under applicable law. If you are not the named recipient, or
     believe you have received this message in error, please immediately
     notify
     the sender by replying to this message and delete the copy you received
     ---------------------------------------------------------------------
     --
     This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
     list
     To post a message email: MIDRANGE-L@xxxxxxxxxxxx
     To subscribe, unsubscribe, or change list options,
     visit: [13]
http://lists.midrange.com/mailman/listinfo/midrange-l
     or email: MIDRANGE-L-request@xxxxxxxxxxxx
     Before posting, please take a moment to review the archives
     at [14]
http://archive.midrange.com/midrange-l.
     --
     This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
     list
     To post a message email: MIDRANGE-L@xxxxxxxxxxxx
     To subscribe, unsubscribe, or change list options,
     visit: [15]
http://lists.midrange.com/mailman/listinfo/midrange-l
     or email: MIDRANGE-L-request@xxxxxxxxxxxx
     Before posting, please take a moment to review the archives
     at [16]
http://archive.midrange.com/midrange-l.
     ---------------------------------------------------------------------
     This electronic mail message and any attachments may contain
     confidential
     or privileged information and is intended for use solely by the
     above-referenced recipient. Any review, copying, printing, disclosure,
     distribution, or other use by any other person or entity is strictly
     prohibited under applicable law. If you are not the named recipient, or
     believe you have received this message in error, please immediately
     notify
     the sender by replying to this message and delete the copy you received
     ---------------------------------------------------------------------
     --
     This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing
     list
     To post a message email: MIDRANGE-L@xxxxxxxxxxxx
     To subscribe, unsubscribe, or change list options,
     visit: [17]
http://lists.midrange.com/mailman/listinfo/midrange-l
     or email: MIDRANGE-L-request@xxxxxxxxxxxx
     Before posting, please take a moment to review the archives
     at [18]
http://archive.midrange.com/midrange-l.
     ------------------------------
     Subject: Digest Footer
     --
     This is the Midrange Systems Technical Discussion (MIDRANGE-L) digest
     list
     To post a message email: MIDRANGE-L@xxxxxxxxxxxx
     To subscribe, unsubscribe, or change list options,
     visit: [19]
http://lists.midrange.com/mailman/listinfo/midrange-l
     or email: MIDRANGE-L-request@xxxxxxxxxxxx
     Before posting, please take a moment to review the archives
     at [20]
http://archive.midrange.com/midrange-l.
     ------------------------------
     End of MIDRANGE-L Digest, Vol 14, Issue 1509
     ********************************************
References
   Visible links
   1. 
http://www.ibm.com/developerworks/ibmi/library/i-websolution-asf-tomcat/
   2. 
http://lists.midrange.com/mailman/listinfo/midrange-l
   3. 
http://www.petesworkshop.com/blog_wp/?p=193
   4. 
http://www.dekko.com/
   5. mailto:midrange-l-bounces@xxxxxxxxxxxx
   6. 
http://www.dekko.com/
   7. mailto:midrange-l-bounces@xxxxxxxxxxxx
   8. 
http://www-912.ibm.com/s_dir/sline003.nsf/PSPbyNumL.xml?OpenView&count
   9. 
http://lists.midrange.com/mailman/listinfo/midrange-l
  10. 
http://archive.midrange.com/midrange-l
  11. 
http://lists.midrange.com/mailman/listinfo/midrange-l
  12. 
http://archive.midrange.com/midrange-l
  13. 
http://lists.midrange.com/mailman/listinfo/midrange-l
  14. 
http://archive.midrange.com/midrange-l
  15. 
http://lists.midrange.com/mailman/listinfo/midrange-l
  16. 
http://archive.midrange.com/midrange-l
  17. 
http://lists.midrange.com/mailman/listinfo/midrange-l
  18. 
http://archive.midrange.com/midrange-l
  19. 
http://lists.midrange.com/mailman/listinfo/midrange-l
  20. 
http://archive.midrange.com/midrange-l
As an Amazon Associate we earn from qualifying purchases.