About the template FSCM9.1 FP2 Peopletools 8.52.03 (v4 - July 2012)

Hello,
Just tested quickly this new template delivered 2 months ago (July 2012).
As far as I undestand, it is just a recut of the one delivered in April 2012. At least it solves the main issue I reported in that other About the template FSCM9.1 FP2 Peopletools 8.52.03 (v3) about the network prompt missing.
But I still have remarks/issues on the template FSCM9.1 FP2 Peopletools 8.52.03 (v4) released earlier in July 2012.
_1. First of all, there a lot of errors reported in /var/log/messages_
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526918.883:3): avc:  denied  { read } for  pid=92 comm="restorecon" name="libc.so.6" dev=xvda2 ino=21 scontext=system_u:sys
tem_r:restorecon_t:s0 tcontext=system_u:object_r:file_t:s0 tclass=lnk_file
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526918.910:4): avc:  denied  { execute } for  pid=92 comm="restorecon" path="/lib64/libc-2.5.so" dev=xvda2 ino=20 scontext=
system_u:system_r:restorecon_t:s0 tcontext=system_u:object_r:file_t:s0 tclass=file
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526921.489:5): avc:  denied  { read } for  pid=296 comm="pam_console_app" name="ld.so.cache" dev=xvda2 ino=94143 scontext=s
ystem_u:system_r:pam_console_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=file
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526921.489:6): avc:  denied  { getattr } for  pid=290 comm="pam_console_app" path="/etc/ld.so.cache" dev=xvda2 ino=94143 sc
ontext=system_u:system_r:pam_console_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=file
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526921.530:7): avc:  denied  { read } for  pid=293 comm="pam_console_app" name="libc.so.6" dev=xvda2 ino=21 scontext=system
_u:system_r:pam_console_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=lnk_file
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526921.530:8): avc:  denied  { execute } for  pid=293 comm="pam_console_app" path="/lib64/libc-2.5.so" dev=xvda2 ino=20 sco
ntext=system_u:system_r:pam_console_t:s0-s0:c0.c1023 tcontext=system_u:object_r:file_t:s0 tclass=file
Sep 13 05:02:55 localhost kernel: input: PC Speaker as /class/input/input3
Sep 13 05:02:55 localhost kernel: Initialising Xen virtual ethernet driver.
Sep 13 05:02:55 localhost kernel: Error: Driver 'pcspkr' is already registered, aborting...
Sep 13 05:02:55 localhost kernel: Floppy drive(s): fd0 is unknown type 15 (usb?), fd1 is unknown type 15 (usb?)
Sep 13 05:02:55 localhost kernel: floppy0: Unable to grab IRQ6 for the floppy driver
Sep 13 05:02:55 localhost kernel: lp: driver loaded but no devices found
Sep 13 05:02:55 localhost kernel: md: Autodetecting RAID arrays.
Sep 13 05:02:55 localhost kernel: md: Scanned 0 and added 0 devices.
Sep 13 05:02:55 localhost kernel: md: autorun ...
Sep 13 05:02:55 localhost kernel: md: ... autorun DONE.
Sep 13 05:02:55 localhost kernel: EXT3 FS on xvda2, internal journal
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526929.896:9): avc:  denied  { execute } for  pid=965 comm="restorecon" path="/lib64/libc-2.5.so" dev=xvda2 ino=20 scontext
=system_u:system_r:restorecon_t:s0 tcontext=system_u:object_r:file_t:s0 tclass=file
Sep 13 05:02:55 localhost kernel: kjournald starting.  Commit interval 5 seconds
Sep 13 05:02:55 localhost kernel: EXT3 FS on xvda1, internal journal
Sep 13 05:02:55 localhost kernel: EXT3-fs: mounted filesystem with ordered data mode.
Sep 13 05:02:55 localhost kernel: kjournald starting.  Commit interval 5 seconds
Sep 13 05:02:55 localhost kernel: EXT3 FS on xvdb1, internal journal
Sep 13 05:02:55 localhost kernel: EXT3-fs: mounted filesystem with ordered data mode.
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526930.647:10): avc:  denied  { execute } for  pid=989 comm="setfiles" path="/lib64/libc-2.5.so" dev=xvda2 ino=20 scontext=
system_u:system_r:setfiles_t:s0 tcontext=system_u:object_r:file_t:s0 tclass=file
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526942.398:11): avc:  denied  { net_admin } for  pid=990 comm="setfiles" capability=12  scontext=system_u:system_r:setfiles
_t:s0 tcontext=system_u:system_r:setfiles_t:s0 tclass=capability
Sep 13 05:02:55 localhost kernel: hrtimer: interrupt took 35229469 ns
Sep 13 05:02:55 localhost kernel: Adding 2104504k swap on /dev/xvda3.  Priority:-1 extents:1 across:2104504k SS
Sep 13 05:02:55 localhost kernel: warning: process `kudzu' used the deprecated sysctl system call with 1.23.
Sep 13 05:02:55 localhost kernel: Loading iSCSI transport class v2.0-870.
Sep 13 05:02:55 localhost kernel: libcxgbi:libcxgbi_init_module: tag itt 0x1fff, 13 bits, age 0xf, 4 bits.
Sep 13 05:02:55 localhost kernel: libcxgbi:ddp_setup_host_page_size: system PAGE 4096, ddp idx 0.
Sep 13 05:02:55 localhost kernel: Chelsio T3 iSCSI Driver cxgb3i v2.0.0 (Jun. 2010)
Sep 13 05:02:55 localhost kernel: iscsi: registered transport (cxgb3i)
Sep 13 05:02:55 localhost kernel: NET: Registered protocol family 10
Sep 13 05:02:55 localhost kernel: cnic: Broadcom NetXtreme II CNIC Driver cnic v2.2.14 (Mar 30, 2011)
Sep 13 05:02:55 localhost kernel: Broadcom NetXtreme II iSCSI Driver bnx2i v2.6.2.3 (Jan 06, 2010)
Sep 13 05:02:55 localhost kernel: iscsi: registered transport (bnx2i)
Sep 13 05:02:55 localhost kernel: iscsi: registered transport (tcp)
Sep 13 05:02:55 localhost kernel: iscsi: registered transport (iser)
Sep 13 05:02:55 localhost kernel: iscsi: registered transport (be2iscsi)
Sep 13 05:02:55 localhost kernel: ip6_tables: (C) 2000-2006 Netfilter Core Team
Sep 13 05:02:55 localhost kernel: warning: `mcstransd' uses 32-bit capabilities (legacy support in use)
Sep 13 05:02:55 localhost kernel: type=1400 audit(1347526970.336:12): avc:  denied  { sys_tty_config } for  pid=1374 comm="consoletype" capability=26  scontext=system_u:system_r
:consoletype_t:s0 tcontext=system_u:system_r:consoletype_t:s0 tclass=capability
Sep 13 05:02:55 localhost kernel: RPC: Registered udp transport module.
Sep 13 05:02:55 localhost kernel: RPC: Registered tcp transport module.
Sep 13 05:02:55 localhost kernel: RPC: Registered tcp NFSv4.1 backchannel transport module.
Sep 13 05:03:00 localhost automount[1769]: lookup_read_master: lookup(nisplus): couldn't locate nis+ table auto.master
Sep 13 05:03:59 localhost kernel: type=1400 audit(1347527039.771:13): avc:  denied  { sys_tty_config } for  pid=2029 comm="consoletype" capability=26  scontext=system_u:system_r
:consoletype_t:s0 tcontext=system_u:system_r:consoletype_t:s0 tclass=capability
Sep 13 05:04:00 localhost NET[2061]: /sbin/dhclient-script : updated /etc/resolv.conf
Sep 13 05:04:01 localhost kernel: IPv6 over IPv4 tunneling driver
Sep 13 05:04:01 localhost NET[2219]: /opt/oracle/psft/vm/oraclevm-template.sh : updated /etc/resolv.conf
Sep 13 05:04:08 localhost NET[2472]: /etc/sysconfig/network-scripts/ifup-post : updated /etc/resolv.conf
Sep 13 05:06:08 localhost restorecond: Reset file context /etc/resolv.conf: system_u:object_r:etc_runtime_t:s0->system_u:object_r:net_conf_t:s0
Sep 13 05:08:19 localhost kernel: Slow work thread pool: Starting up
Sep 13 05:08:19 localhost kernel: Slow work thread pool: Ready
Sep 13 05:08:19 localhost kernel: FS-Cache: Loaded
Sep 13 05:08:19 localhost kernel: FS-Cache: Netfs 'nfs' registered for caching
Sep 13 05:08:19 localhost kernel: svc: failed to register lockdv1 RPC service (errno 97).
...Well, I don't know if it triggers others problems yet, but the last line could reveale an error within the /etc/hosts file which has not been properly modified during deployment (especially IPV6, it probably should be removed) :
[root@psovmfscmfp2 /]# more /etc/hosts
127.0.0.1       localhost.localdomain   localhost
::1     localhost6.localdomain6 localhost6
192.168.1.150   psovmfscmfp2.phoenix.nga psovmfscmfp2
[root@psovmfscmfp2 /]#_2. Now about the COBOL_
Despite I choosed to install Microfocus, COBOL does not work. Sample COBOL processes such as PTPDBTST and PTPDTTST finished in error.
The log is empty, here below the output from the file $PS_CFG_HOME/psft/pt/8.52/appserv/prcs/PRCSDOM/LOGS/stdout (psadm2) :
=================================Error===============================
Message:     Process 10899 is marked 'Initiated' or 'Processing' but can not detect status of PID
        Process Name: PTPDBTST
        Process Type: COBOL SQL
        Session Id:   9313
=====================================================================
OprId = VP1Note that I successfully tested AEs and SQRs.
Here is the command line fired that I can see from the process monitor > parameter (nga is being my run control id) :
PSRUN PTPDBTST ORACLE/F91TMPLT/VP1/OPRPSWD/nga/10899//0 I used the following trace setting on the PTPDBTST's process parameter (override) to see what happens :
%%DBTYPE%%/%%DBNAME%%/%%OPRID%%/%%OPRPSWD%%/%%RUNCNTLID%%/%%INSTANCE%%//%%DBFLAG%%But it does not generate more logs...
I also use "RCCBL Redirect =1" in psappsrv.cfg (reconfigure and restart appdom), then start the COBOL through menu PeopleTools > Utilities > Debug > PeopleTools Test Utilities, and run a "Remote Call Test".
I received "COBOL Program PTPNTEST aborted (2,-1) FUNCLIB_UTIL.RC_TEST_PB.FieldChange PCPC:2143 Statement:26", but it generated two empty files (PTPNTEST_VP1_0913064910.out and PTPNTEST_VP1_0913064910.err).
Next step, checking the folder $PS_HOME/cblbin, it is...er... empty... does this mean COBOL have not been compiled ? Hmmm, I'm pretty sure I replied 'yes' when it was prompted though (still have the screenshots)...
And we can see several folders dated from today and license seems ok from Microfocus directories :
[psadm1@psovmfscmfp2 tools]$ cd /opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit
[psadm1@psovmfscmfp2 svrexp-51_wp4-64bit]$ ls -lrt
total 264
-r--r--r--  1 root root 10455 Nov 19  2009 ADISCTRL
dr-xr-xr-x 10 root root  4096 Nov 19  2009 terminfo
dr-xr-xr-x  2 root root  4096 Nov 19  2009 xdb
-r--r--r--  1 root root 11949 Nov 19  2009 eslmf-mess
dr-xr-xr-x  2 root root  4096 Nov 19  2009 include
dr-xr-xr-x 17 root root  4096 Nov 19  2009 lang
dr-xr-xr-x  4 root root  4096 Nov 19  2009 es
dr-xr-xr-x  2 root root  4096 Nov 19  2009 dynload
drwxrwxrwx  2 root root  4096 Nov 19  2009 deploy
dr-xr-xr-x  2 root root  4096 Nov 19  2009 dynload64
dr-xr-xr-x  2 root root  4096 Nov 19  2009 dialog
dr-xr-xr-x  2 root root  4096 Nov 19  2009 cpylib
dr-xr-xr-x  8 root root 28672 Nov 19  2009 lib
dr-xr-xr-x  3 root root  4096 Nov 19  2009 snmp
dr-xr-xr-x  8 root root  4096 Nov 19  2009 src
dr-xr-xr-x 28 root root  4096 Nov 19  2009 demo
dr-xr-xr-x  6 root root  4096 Nov 19  2009 docs
-rw-r--r--  1 root root    49 Sep 13 05:13 license.txt
-r-xr-xr-x  1 root root 12719 Sep 13 05:13 install.orig
-r-xr-xr-x  1 root root 13006 Sep 13 05:13 install
dr-xr-xr-x  6 root root  4096 Sep 13 05:13 lmf
dr-xr-xr-x  2 root root  4096 Sep 13 05:13 aslmf
dr-xr-xr-x  6 root root  4096 Sep 13 05:15 etc
dr-xr-xr-x  4 root root 12288 Sep 13 05:15 bin
[psadm1@psovmfscmfp2 svrexp-51_wp4-64bit]$ more license.txt
I
ORACLE-30DAYDEV64
01030 A0780 014A6 7980B A17CSo let's assume it has been properly installed and let's compile the COBOLs. Here we go :
[psadm1@psovmfscmfp2 svrexp-51_wp4-64bit]$ cd $PS_HOME/setup
[psadm1@psovmfscmfp2 setup]$ ./pscbl.mak
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Convert all files for Unicode ....
Conversion Summary for Source Codes in  :
     Source: /opt/oracle/psft/pt/tools/src/cbl/
     Target: /opt/oracle/psft/pt/tools/src/cblunicode/
      Number of Copy Libraries Read: 71
                     Modified:       71
                 Not Modified:       0
      Number of Programs Read:       44
                     Modified:       44
                 Not Modified:       0
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : All COBOL files were converted for Unicode successfully
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Compiling PTPCBLAE.cbl ...
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak: line 249: cob: command not found
cp: cannot stat `PTPCBLAE.gnt': No such file or directory
cp: cannot stat `PTPCBLAE.int': No such file or directory
cp: cannot stat `PTPCBLAE.lst': No such file or directory
...What about env. variables ? COBDIR, COBPATH and COBOL do not appears anywhere in PATH...
[psadm1@psovmfscmfp2 setup]$ env|grep -i cobol
[psadm1@psovmfscmfp2 setup]$Let's set the env variables as we could expect to be (page 27, step 17 of the given doc), and retry to compile the COBOL :
[psadm1@psovmfscmfp2 setup]$ export COBDIR=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit
[psadm1@psovmfscmfp2 setup]$ export LD_LIBRARY_PATH=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit/lib:$LD_LIBRARY_PATH
[psadm1@psovmfscmfp2 setup]$ export PATH=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit/bin:$PATH
[psadm1@psovmfscmfp2 setup]$ ./pscbl.mak
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Convert all files for Unicode ....
Conversion Summary for Source Codes in  :
     Source: /opt/oracle/psft/pt/tools/src/cbl/
     Target: /opt/oracle/psft/pt/tools/src/cblunicode/
      Number of Copy Libraries Read: 71
                     Modified:       71
                 Not Modified:       0
      Number of Programs Read:       44
                     Modified:       44
                 Not Modified:       0
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : All COBOL files were converted for Unicode successfully
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Compiling PTPCBLAE.cbl ...
Micro Focus LMF - 010: Unable to contact license manager.                                                                                                                              This product has been unable to contact the                                     License Manager.                                                                                                                                                Execution of this product has been terminated.                                                                                                                  This product cannot execute without the License                                 Manager. Contact your license administrator                                     or refer to the 'Information Messages' chapter                                  of the License Management Facility                                              Administrator's Guide.
cob64: error(s) in compilation: PTPCBLAE.cbl
cp: cannot stat `PTPCBLAE.gnt': No such file or directory
cp: cannot stat `PTPCBLAE.int': No such file or directory
cp: cannot stat `PTPCBLAE.lst': No such file or directory
...Ok, maybe a bit better, at least it is trying to contact LMF. Probably the LMF is not started. Let's try to start it :
[root@psovmfscmfp2 microfocus]# ./mflmman
MF-LMF:Thu Sep 13 07:19:37 2012: LMF Starting
[root@psovmfscmfp2 microfocus]#Good, it is starting, it means it wasn't (sic). Now retry to compile :
[psadm1@psovmfscmfp2 setup]$ export COBDIR=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit
[psadm1@psovmfscmfp2 setup]$ export LD_LIBRARY_PATH=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit/lib:$LD_LIBRARY_PATH
[psadm1@psovmfscmfp2 setup]$ export PATH=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit/bin:$PATH
[psadm1@psovmfscmfp2 setup]$ ./pscbl.mak
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Convert all files for Unicode ....
Conversion Summary for Source Codes in  :
     Source: /opt/oracle/psft/pt/tools/src/cbl/
     Target: /opt/oracle/psft/pt/tools/src/cblunicode/
      Number of Copy Libraries Read: 71
                     Modified:       71
                 Not Modified:       0
      Number of Programs Read:       44
                     Modified:       44
                 Not Modified:       0
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : All COBOL files were converted for Unicode successfully
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Compiling PTPCBLAE.cbl ...
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Compiling PTPCURND.cbl ...
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Compiling PTPDBTST.cbl ...
<snipped>
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : Compiling PTPWLGEN.cbl ...
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : All COBOL programs have been successfully compiled.
/opt/oracle/psft/pt/tools/setup/pscbl_mf.mak : The COBOL executables were copied to /opt/oracle/psft/pt/tools/cblbin
rm: cannot remove `/opt/oracle/psft/pt/apptools/src/cblunicode/CECCRLP1.cbl': Permission denied
rm: cannot remove `/opt/oracle/psft/pt/apptools/src/cblunicode/CECCRLUP.cbl': Permission deniedIt looks better, I think the last lines marked with "Permission denied" can be safely be ignored.
Those files are owned by psadm3 with a read only for other users (sic). But more concern, I'm wondering why it looks into apptools (???) whereas I'm using psadm1 (tools only, COBPATH=/opt/oracle/psft/pt/tools/cblbin).
Anyway, seems the *.gnt files required to run the COBOLs programs are now in bin :
[psadm1@psovmfscmfp2 setup]$ ls /opt/oracle/psft/pt/tools/cblbin
PTPCBLAE.gnt  PTPDTTST.gnt  PTPECOBL.gnt  PTPLOGMS.gnt  PTPRATES.gnt  PTPSQLGS.gnt  PTPTESTU.gnt  PTPTSCNT.gnt  PTPTSLOG.gnt  PTPTSTBL.gnt  PTPTSWHR.gnt
PTPCURND.gnt  PTPDTWRK.gnt  PTPEFCNV.gnt  PTPMETAS.gnt  PTPRUNID.gnt  PTPSQLRT.gnt  PTPTESTV.gnt  PTPTSEDS.gnt  PTPTSREQ.gnt  PTPTSUPD.gnt  PTPUPPER.gnt
PTPDBTST.gnt  PTPDYSQL.gnt  PTPERCUR.gnt  PTPNETRT.gnt  PTPSETAD.gnt  PTPSTRFN.gnt  PTPTFLDW.gnt  PTPTSEDT.gnt  PTPTSSET.gnt  PTPTSUSE.gnt  PTPUSTAT.gnt
PTPDEC31.gnt  PTPECACH.gnt  PTPESLCT.gnt  PTPNTEST.gnt  PTPSHARE.gnt  PTPTEDIT.gnt  PTPTLREC.gnt  PTPTSFLD.gnt  PTPTSTAE.gnt  PTPTSWHE.gnt  PTPWLGEN.gnt
[psadm1@psovmfscmfp2 setup]$Have a try to link COBOLs :
[psadm1@psovmfscmfp2 setup]$ ./psrun.mak
./psrun.mak - linking PSRUN for oel-5-x86_64, Version 2.6.32-200.13.1.el5uek ...
./psrun.mak - Successfully created PSRUN in directory: /opt/oracle/psft/pt/tools/bin
./psrun.mak - linking PSRUNRMT for oel-5-x86_64, Version 2.6.32-200.13.1.el5uek ...
./psrun.mak - Successfully created PSRUNRMT in directory: /opt/oracle/psft/pt/tools/bin
[psadm1@psovmfscmfp2 setup]$The err files are empty :
-rw-r--r-- 1 psadm1 oracle     0 Sep 13 07:26 psrun.err
-rw-r--r-- 1 psadm1 oracle     0 Sep 13 07:26 psrunrmt.errSo far, so good now. We are able to test again the sample COBOL... until next failure.
Yes, unfortunately, it fails again. But good thing, the log is not empty now :
PSRUN: error while loading shared libraries: libcobrts64.so: cannot open shared object file: No such file or directoryThat's probably coming from some missing libraries during the psprcs.cfg configuration. Let's use the same env. variables settings as for psadm1 when compiling COBOLs.
[psadm2@psovmfscmfp2 appserv]$ export COBDIR=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit
[psadm2@psovmfscmfp2 appserv]$ export LD_LIBRARY_PATH=$COBDIR/lib:$LD_LIBRARY_PATH
[psadm2@psovmfscmfp2 appserv]$ export PATH=$COBDIR/bin:$PATH
[psadm2@psovmfscmfp2 appserv]$ ./psadminReconfigure, restart prcs and re-test... SUCCESSFULLY !!!!!!!!!!!!!!!!!!!!!!!!!
Log from PTPDBTST process shows :
SUCCESSFUL DATABASE CONNECTION
SUCCESSFUL DATABASE DISCONNECTWhat a pain !
I did not go further, but we could expect the same issue within the Application COBOLs, since the cblbin directory is also empty out there.
According to psprcs.env, there're two values for COBDIR and the one for the applications cobol is empty :
[psadm2@psovmfscmfp2 PRCSDOM]$ more psprcsrv.env
INFORMIXSERVER=192.168.1.149
COBPATH=/opt/oracle/psft/pt/apptools/cblbin:/opt/oracle/psft/pt/tools/cblbin
PATH=/opt/oracle/psft/pt/apptools/bin:/opt/oracle/psft/pt/apptools/bin/interfacedrivers::/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit/bin:/opt/oracle/psft/pt/tools/appserv:/opt
/oracle/psft/pt/tools/setup:/opt/oracle/psft/pt/tools/jre/bin:/opt/oracle/psft/pt/bea/tuxedo/bin:.:/opt/oracle/psft/pt/oracle-client/11.2.0.x/bin:/opt/oracle/psft/pt/oracle-clie
nt/11.2.0.x/perl/bin:/usr/local/bin:/bin:/usr/bin:/opt/oracle/psft/pt/tools/bin:/opt/oracle/psft/pt/tools/bin/sqr/ORA/bin:/opt/oracle/psft/pt/tools/verity/linux/_ilnx21/bin:/hom
e/psadm2/bin:.
[psadm2@psovmfscmfp2 PRCSDOM]$ ls /opt/oracle/psft/pt/apptools/cblbin
[psadm2@psovmfscmfp2 PRCSDOM]$ ls /opt/oracle/psft/pt/tools/cblbin
PTPCBLAE.gnt  PTPDTTST.gnt  PTPECOBL.gnt  PTPLOGMS.gnt  PTPRATES.gnt  PTPSQLGS.gnt  PTPTESTU.gnt  PTPTSCNT.gnt  PTPTSLOG.gnt  PTPTSTBL.gnt  PTPTSWHR.gnt
PTPCURND.gnt  PTPDTWRK.gnt  PTPEFCNV.gnt  PTPMETAS.gnt  PTPRUNID.gnt  PTPSQLRT.gnt  PTPTESTV.gnt  PTPTSEDS.gnt  PTPTSREQ.gnt  PTPTSUPD.gnt  PTPUPPER.gnt
PTPDBTST.gnt  PTPDYSQL.gnt  PTPERCUR.gnt  PTPNETRT.gnt  PTPSETAD.gnt  PTPSTRFN.gnt  PTPTFLDW.gnt  PTPTSEDT.gnt  PTPTSSET.gnt  PTPTSUSE.gnt  PTPUSTAT.gnt
PTPDEC31.gnt  PTPECACH.gnt  PTPESLCT.gnt  PTPNTEST.gnt  PTPSHARE.gnt  PTPTEDIT.gnt  PTPTLREC.gnt  PTPTSFLD.gnt  PTPTSTAE.gnt  PTPTSWHE.gnt  PTPWLGEN.gnt
[psadm2@psovmfscmfp2 PRCSDOM]$The directory "/opt/oracle/psft/pt/apptools/cblbin" is owned by psadm3 and hosted on the database server (nfs mounted), so I assume we also need to set proper values for env variables, and compile the COBOLs before being able to use them.
To resume what I did to make the COBOLs working on this PSOVM :
1. As root, start LMF (this has to be done only once)
cd /opt/oracle/psft/pt/cobol/microfocus
./mflmman
2. As psadm1, set proper env. variable and compile (setting env variable has to be done each time you want to compile COBOLs)
export COBDIR=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit
export LD_LIBRARY_PATH=$COBDIR/lib:$LD_LIBRARY_PATH
export PATH=$COBDIR/bin:$PATH
cd $PS_HOME/setup
./pscbl.mak
./psrun.mak
3. As psadm2, set proper env. variable and reconfigure psprcs.cfg, restart, restart (setting env variable has to be done each time you want to start the process scheduler, so probably better to append these in the .bash_profile)
export COBDIR=/opt/oracle/psft/pt/cobol/svrexp-51_wp4-64bit
export LD_LIBRARY_PATH=$COBDIR/lib:$LD_LIBRARY_PATH
export PATH=$COBDIR/bin:$PATH
cd $PS_HOME/appserv
./psadmin
4. Same as step 2, but with user psadm3.
HTH,
Nicolas.
PS: will it be the same issue on the HCM template delivered at the same time ? To be tested as well.
PS2: and yes, I tested it twice before posting, result is same.
Edited by: N Gasparotto on Sep 13, 2012 5:17 PM

Fortunately, the COBOL issue does not exist on PSOVM HCM9.1 FP2 PT8.52.06 delivered in July 2012 (v3). COBOL are properly compiled (tools and app COBOLs), cblbin is not empty and they run successfully on the first shot.
Nicolas.

Similar Messages

  • About web templates inside the portal

    Hi !
    I need your help because I would like to do something and I can’t do it, even after reading a lot of documentation.
    I would like to display my lovely web templates (made with the Web Application Designer) inside the portal, through the BI > Bex Web Analyzer. But there, I can only open queries, views and infoproviders.
    Is there an easy way to display my web templates in the portal ?
    Thanks for your help,
    Best regards.

    Hi Cedric,
    The setting of web templates for BEX is available in BI.
    You can check IMG setting in the SPRO transaction, setting up the BEX templates.
    There you can define the tchnical name of the template.
    After the changes been done, remember to restart the ABAP stack.
    Regards,
    Prashil

  • I have a problem with my Template as I keep receiving this message in DW CS6; Template is nested inside itself? All my other pages linked to the Template is also not working fine. I tried to us the answer in this forum, but its not working

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/index.dwt" codeOutsideHTMLIsLocked="false" -->
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <!-- InstanceBeginEditable name="doctitle" -->
    <title>Home | Greatman Group of Company</title>
    <!-- InstanceEndEditable -->
    <!-- Start WOWSlider.com HEAD section -->
    <link rel="stylesheet" type="text/css" href="../engine1/style.css" />
    <script type="text/javascript" src="../engine1/jquery.js"></script>
    <!-- End WOWSlider.com HEAD section -->
    <style type="text/css">
    .shadowblockmenu-v{
        font: bold 14px Palatino Linotype, Book Antiqua, Palatino, serif;
        width: 180px; /* width of menu */
    .shadowblockmenu-v ul{
    border: 2px solid #03F;
    padding: 0;
    margin: 0;
    list-style: none;
    .shadowblockmenu-v ul li{
    margin:0;
    padding:0;
    .shadowblockmenu-v ul li a{
    display:block;
    color: #03F;
    padding: 10px 15px;
    text-decoration: none;
    border-bottom: 1px solid #03F;
    border-right: 1px solid #03F; /*right border between menu items*/
    -moz-box-shadow: inset 7px 0 10px rgba(114,114,114, 0.6); /* Add inset shadow to each menu item. First 3 values in (114,114,114, 0.5) specifies rgb values, last specifies opacity */
    -webkit-box-shadow: inset 7px 0 10px rgba(114,114,114, 0.6);
    box-shadow: inset 7px 0 10px rgba(114,114,114, 0.6);
    text-shadow: 0 -1px 1px #03F; /* CSS text shadow to give text some depth */
    -moz-transition: all 0.2s ease-in-out; /* Enable CSS transition between property changes */
    -webkit-transition: all 0.2s ease-in-out;
    -o-transition: all 0.2s ease-in-out;
    -ms-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
    .shadowblockmenu-v ul li a:hover, .shadowblockmenu-v ul li a.selected{
    color: black;
    -moz-box-shadow: inset 7px 0 10px rgba(216,89,39, 0.5), inset 0 0 15px rgba(216,89,39, 0.6), inset 0 0 20px rgba(216,89,39, 0.8); /* Add 3 inset shadows to each menu item  */
    -webkit-box-shadow: inset 7px 0 10px rgba(216,89,39, 0.5), inset 0 0 15px rgba(216,89,39, 0.6), inset 0 0 20px rgba(216,89,39, 0.8);
    box-shadow: inset 7px 0 10px rgba(216,89,39, 0.5), inset 0 0 15px rgba(216,89,39, 0.6), inset 0 0 20px rgba(216,89,39, 0.8);
    #wholepage {
        height: 1300px;
        width: 1000px;
        float: none;
        margin: auto;
    .companylogo {
        height: 150px;
        width: 250px;
    .navigationmenu {
        height: 150px;
        width: 750px;
        margin: 0px;
        float: right;
    .bannerimg {
        margin: auto;
        height: 350px;
        width: 950px;
    .marqueetext {
        height: 60px;
        width: 980px;
        margin: auto;
        background-color: #03F;
        color: #FFF;
        padding-top: 1px;
        padding-bottom: 10px;
        font-size: 22px;
        font-weight: bolder;
        border-radius: 20px;
        border: medium solid #F00;
    .footer {
        height: 58px;
        width: 1000px;
        color: #FFF;
        background-color: #03F;
    #bodycontent {
        display: block;
        margin: auto;
        height: 680px;
        width: 980px;
    #body3 {
        display: block;
        float: right;
        height: 225px;
        width: 780px;
        margin-top: 10px;
    #body4 {
        display: block;
        float: right;
        height: 220px;
        width: 780px;
        margin-top: 5px;
    #body1 {
        display: block;
        height: 450px;
        width: 200px;
        float: left;
    #body2 {
        display: block;
        height: 220px;
        width: 780px;
        float: right;
    </style>
    <link href="../SpryAssets/SpryMenuBarHorizontal.css" rel="stylesheet" type="text/css" />
    <script src="../SpryAssets/SpryMenuBar.js" type="text/javascript"></script>
    <script type="text/javascript">
    function MM_preloadImages() { //v3.0
      var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
        if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
    function MM_swapImgRestore() { //v3.0
      var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
    function MM_findObj(n, d) { //v4.01
      var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
      if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
      for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
      if(!x && d.getElementById) x=d.getElementById(n); return x;
    function MM_swapImage() { //v3.0
      var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
       if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
    </script>
    <!-- InstanceBeginEditable name="head" -->
    <!-- TemplateBeginEditable name="head" -->
    <!-- TemplateEndEditable -->
    <!-- InstanceEndEditable -->
    <!-- InstanceParam name="editablebody" type="boolean" value="true" -->
    </head>
    <body onload="MM_preloadImages('../Images/CJ4Sale.jpg','../Images/Cars4Sale.jpg','../Images/CP4 Sale.jpg')">
    <div id="wholepage">
      <div class="navigationmenu">
        <ul id="MenuBar1" class="MenuBarHorizontal">
          <li><a href="../index.html">Home</a>      </li>
          <li><a href="../aboutus.html" class="MenuBarItemSubmenu">About Us</a>
            <ul>
              <li><a href="../aboutus.html">Director / CEO</a></li>
            </ul>
          </li>
          <li><a href="../webdesign.html" class="MenuBarItemSubmenu">Products</a>
            <ul>
              <li><a href="../webdesign.html">Web Design</a></li>
              <li><a href="../jerseys.html">Jerseys</a></li>
              <li><a href="#">Cars</a></li>
              <li><a href="#">Laptops / Phones &amp; Accessories</a></li>
            </ul>
          </li>
          <li><a href="#">Site Map</a>      </li>
          <li><a href="#">Contact Us</a></li>
          <img src="../Images/bannerlogo.jpg" width="745" height="115" alt="My Company Logo" />
        </ul>
      </div>
      <div class="companylogo"><a href="../index.html"><img src="../Images/Logo.jpg" width="250" height="150" alt="My Company Logo" /></a></div><hr/ color="red" />
      <div class="bannerimg">
      <!-- Start WOWSlider.com BODY section -->
    <div id="wowslider-container1">
    <div class="ws_images"><ul>
            <li><img src="../data1/images/customized_barcelona_jerseys.jpg" alt="Customized Barcelona Jerseys" title="Customized Barcelona Jerseys" id="wows1_0"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><img src="../data1/images/customized_chelsea_jerseys.jpg" alt="Customized Chelsea Jerseys" title="Customized Chelsea Jerseys" id="wows1_1"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><img src="../data1/images/cars__jeeps_and_space_buses.jpg" alt="Cars, Jeeps and Space Buses" title="Cars, Jeeps and Space Buses" id="wows1_2"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><img src="../data1/images/cars.jpg" alt="Cars" title="Cars" id="wows1_3"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><img src="../data1/images/cell_phones.jpg" alt="Cell Phones & Accessories" title="Cell Phones & Accessories" id="wows1_4"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><img src="../data1/images/laptops.jpg" alt="Laptops & Accessories" title="Laptops & Accessories" id="wows1_5"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><a href="http://wowslider.com/vi"><img src="../data1/images/customized_arsenal_jerseys.jpg" alt="slider html" title="Customized Arsenal Jerseys" id="wows1_6"/></a>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
            <li><img src="../data1/images/customized_man_utd__chelsea_and_barceloa_jerseys.jpg" alt="Customized Man Utd, Chelsea and Barcelona Jerseys" title="Customized Man Utd, Chelsea and Barcelona Jerseys" id="wows1_7"/>Contact Us :- </br>
    Email: [email protected] </br>
    Mobile: +2349092974966 or +234817493851</li>
        </ul></div>
        <div class="ws_bullets"><div>
            <a href="#" title="Customized Barcelona Jerseys"><span><img src="../data1/tooltips/customized_barcelona_jerseys.jpg" alt="Customized Barcelona Jerseys"/>1</span></a>
            <a href="#" title="Customized Chelsea Jerseys"><span><img src="../data1/tooltips/customized_chelsea_jerseys.jpg" alt="Customized Chelsea Jerseys"/>2</span></a>
            <a href="#" title="Cars, Jeeps and Space Buses"><span><img src="../data1/tooltips/cars__jeeps_and_space_buses.jpg" alt="Cars, Jeeps and Space Buses"/>3</span></a>
            <a href="#" title="Cars"><span><img src="../data1/tooltips/cars.jpg" alt="Cars"/>4</span></a>
            <a href="#" title="Cell Phones & Accessories"><span><img src="../data1/tooltips/cell_phones.jpg" alt="Cell Phones & Accessories"/>5</span></a>
            <a href="#" title="Laptops & Accessories"><span><img src="../data1/tooltips/laptops.jpg" alt="Laptops & Accessories"/>6</span></a>
            <a href="#" title="Customized Arsenal Jerseys"><span><img src="../data1/tooltips/customized_arsenal_jerseys.jpg" alt="Customized Arsenal Jerseys"/>7</span></a>
            <a href="#" title="Customized Man Utd, Chelsea and Barcelona Jerseys"><span><img src="../data1/tooltips/customized_man_utd__chelsea_and_barceloa_jerseys.jpg" alt="Customized Man Utd, Chelsea and Barcelona Jerseys"/>8</span></a>
        </div></div><div class="ws_script" style="position:absolute;left:-99%"><a href="http://wowslider.com">carousel jquery</a> by WOWSlider.com v7.8</div>
    <div class="ws_shadow"></div>
    </div>   
    <script type="text/javascript" src="../engine1/wowslider.js"></script>
    <script type="text/javascript" src="../engine1/script.js"></script>
    <!-- End WOWSlider.com BODY section -->
    </div>
      <!-- InstanceBeginEditable name="EditRegion5" --><br/>
      <div class="marqueetext">
        <p>
          <marquee>
            For your Static and Dynamic Websites Design at an affordable price. Contact Us :- Email: <em style="color:#FF0"> [email protected] </em> Mobile: <em style="color:#FF0"> +2349092974966 or +234817493851 </em>
          </marquee>
        </p>
      </div>
      <!-- InstanceEndEditable -->
      <hr/ color="red" />
    <div id="bodycontent">
        <div id="body1">
          <div class="shadowblockmenu-v">
            <ul>
              <li><a href="../index.html" style="color:#03F">&deg; Home</a></li>
              <li><a href="../aboutus.html" style="color:#03F">&deg; About Us</a></li>
              <li><a href="../aboutus.html" style="color:#F00">   &deg; Director / CEO</a></li>
              <li><a href="../webdesign.html" style="color:#03F">&deg; Products</a></li>
              <li><a href="../webdesign.html" style="color:#F00">   &deg; Web Design</a></li>
              <li><a href="../jerseys.html" style="color:#F00">   &deg; Jerseys</a></li>
              <li><a href="../index.html" style="color:#F00">   &deg; Cars</a></li>
              <li><a href="../index.html" style="color:#F00">   &deg; Laptops / Phones & Accessories</a></li>
              <li><a href="../index.html" style="color:#03F">&deg; Site Map</a></li>
              <li><a href="../index.html" style="color:#03F">&deg; Contact Us</a></li>
            </ul>
          </div>
        </div>
        <div id="body2"><!-- InstanceBeginEditable name="EditRegion1" -->
          <h4 align="center" style="color:#F00">ALL CLUBS &amp; COUNTRIES SALES &amp; CUSTOMIZE JERSEYS FOR SALE!!! </h4>
          <a href="#" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image4','','../Images/CJ4Sale.jpg',1)"><img src="../Images/BJ4Sale.jpg" alt="Jerseys For Sale" width="200" height="150" id="Image4" align="left" hspace="10" /></a>
          <p style="color: #000; font-size: 18px;">We recently ventured into customising T-shirts for occassions &amp; Jerseys for all your favorite clubs. We do welcome negative criticism as to help us improve on our production quality as we are full of optimism &amp; we would appreciate ideas that would help this business improve. Just kindly feel free to fill our Feedback form and make a comment. We would work on getting improved based on your comments for us to satisfy all (you) our numerous customers.</p>
        <!-- InstanceEndEditable --></div>
        <div id="body3"><!-- InstanceBeginEditable name="EditRegion2" -->
          <h4 align="center" style="color:#F00">CARS, JEEPS &amp; SPACE BUSES FOR SALE!!! </h4>
          <a href="#" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image5','','../Images/Cars4Sale.jpg',1)"><img src="../Images/Car4Sale.jpg" alt="Cars, Jeeps and Space Buses for sale" width="200" height="150" id="Image5" hspace="10" align="left" /></a>
          <p style="color: #000; font-size: 18px;">We've been in the business of selling all types of vehicles for 6 years. We supply qualities and well conditioned vehicles to our customers which made us one of the best Car Dealers in town. We satisfy our customers to their satisfaction. We address some sellers nowadays as an Old Timer. They think they know everything, they don't want to learn new things, they are average (or below average) salespeople and they take great fun out of bringing new salespeople down to their weak level.</p>
        <!-- InstanceEndEditable --></div>
        <div id="body4"><!-- InstanceBeginEditable name="EditRegion3" -->
          <h4 align="center" style="color:#F00">LAPTOPS / PHONES &amp; ACCESSORIES FOR SALE!!! </h4>
          <a href="#" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image6','','../Images/CP4Sale.jpg',1)"><img src="../Images/Laptops4Sale.jpg" alt="Laptops/Phones and Accessories for sale" width="200" height="150" id="Image6" hspace="10" align="left" /></a>
          <p style="color: #000; font-size: 18px;">We have been in the business of selling all types of Laptops, Phones and Accessories (Branded new, UK Used and Nigeria Used)for 8 years. We supply qualities Laptops, Phones and Accessories to our customers which made us one of the best Sellers in this business. We satisfy our customers to their satisfaction by offering very good greeting to all our customers in a very respectful manners both on call,  e-mails as well as in our office.</p>
        <!-- InstanceEndEditable --></div>
      </div>
      <div><!-- InstanceBeginEditable name="EditRegion4" --><!-- InstanceEndEditable --></div>
      <hr/ color="red" />
      <div class="footer">
        <div align="center">Copyright &copy; 2015 Greatman Group of Company<br />
          Design By: Musty Greatman<br/>
        All Rights Reserved.</div>
      </div>
    </div>
    <script type="text/javascript">
    var MenuBar1 = new Spry.Widget.MenuBar("MenuBar1", {imgDown:"SpryAssets/SpryMenuBarDownHover.gif", imgRight:"SpryAssets/SpryMenuBarRightHover.gif"});
    </script>
    </body>
    <!-- InstanceEnd --></html>

    The following line tells me that this is not a template file, but a document created from a template called index.dwt
    <html xmlns="http://www.w3.org/1999/xhtml"><!-- InstanceBegin template="/Templates/index.dwt" codeOutsideHTMLIsLocked="false" -->
    This means that you saved a child document as a template file at some stage.
    If you go to Modify->Templates->Detach from Template, you can remove the template structure from your document. All you then need to do is to re-save the document as a template.

  • How can I print an envelope from the template Cards and Invitations on my HP Laserjet P2015?

    I have been trying to print an envelope in Pages 09 on my mac from the template called Cards and Invitations. I select a template that is 5.75 x 8.75 inches. When I go to print this envelope with my HP Laserjet P2015 and correctly load it as the manual says, using tray 1, etc., the envelope does not print correctly. The preview shows the correct orientation, but it doesn't print correctly. I have seen that many others have requested information about printing in Pages. Has this situation been corrected yet? The #10 envelope template under Business forms in the template section, works fine. My printer supports envelopes of various sizes, so it must be something in the software for Pages that is the problem. Perhaps you can enlighten me on this problem. Thanks,
    judithfromaz

    Judith
    Perhaps you can enlighten us as to what "does not print correctly" actually means.
    Miss-spells your name? or what?
    How have you set up your Page set-up?
    It has to agree with how you are feeding the envelope in and what printer driver you are using.
    Peter

  • How can I use the templates in iPhoto to email my photos if I don't have a mobileMe account?

    I have upgraded to iLife11 and want to use the cool templates to email photos. I don't have a mobileme account. It doesn't appear that I can Use the templates. Am I doing something wrong?

    What do you mean by the AOL screen?  Is AOL your ISP?  If it is popping up to connect you to the internet that might be what is preventing you from composing an email. It also could be that AOL was set up as your default email client.  Do you use AOL as an ISP/Email client?
    In Mac OS X Lion (I can't vouch for any other version of Mac OS) to change your default mail viewer/client open up apple's mail app. Go to file->settings Under the general tab it's the top choice if it is set to AOL, you might want to switch it so you can get it to come up with the email you actually use.  Also if you do use AOL, they should have a section in their help about setting up "pop3" email, or how to use AOL mail in outlook.  Now the steps might not be the same as far as what menu choices you have to make, but what you're gonna get out of that section is incomming/out going server's and anything else like ports and etc.  Apple's mail app needs all that same information.

  • In Address Book, why does Apple let you create custom fields in the Template cards but not have them available for importing?

    I open Address Book, go into Preferences, select Template and under the Names field (friend, assistant, father, etc) I add a custom field called "Principal".
    I also add two more custom fields in the Email area.
    Quit Address Book then relaunch. Add a new contact and the new custom fields, Principal, etc. are there. All good so far.
    I have a Now Contact file with about 200 contacts in it. I export all fields as a Text file, Tab delimited. No problems there. With Address Book launched, select Import, pick the text file, leave Text Encoding on Automatic and click Open.
    The window that shows the fields for Address Book and fields for the text file side by side opens. This is where you match up the correct fields for importing. If I go to one of the fields from the text file that I created a custom field for, click under the Address Book heading on the Do not import, scroll thru the Apple choices of fields, none of the custom fields show up. Only the original Apple ones are there. Why does Apple let you create them in the Template area but not have them available for importing? Does anyone have suggestions on getting around this?

    While most likely not of interest to you, Spotlight can also tell you where the files it finds are located
    Hover the mouse pointer over the name, and press Command-Option and the path to the file will be displayed.
    As for opening a terminal session in the directory where a file is located, there is Applescripts that do just that as well as specific features in Lion/Mountain Lion terminal:
    <http://stackoverflow.com/questions/420456/open-terminal-here-in-mac-os-finder>
    <http://hints.macworld.com/article.php?story=20110729034827358>
    <http://www.macworld.com/article/1047793/folderinterm.html>
    <http://www.macworld.com/article/1161876/open_finder_folder_in_terminal.html>
    <http://www.macobserver.com/tmo/article/os_x_lion_open_a_folders_location_in_term inal>

  • Error 1074395241: The template descriptor does not contain data required for rotation-invariant matching.

    Hello all,
    I am using the IMAQ Match Pattern 4 to detect the rotation angle of a template image. However, it shows the error: "Error 1074395241: The template descriptor does not contain data required for rotation-invariant matching." What is the problem exactly? How to solve this? The details are explained below.
    My project is a little bit complicated. Part of the block diagram containing the IMAQ Match Pattern 4 is shown below:
    The source image is a series of frames of images read from an AVI video (I used a for loop to process the images frame by frame). The template image is a selected region of the first frame. So it means, the user selected the object of ineterst in the first frame of the video, and in each of the following frames, we need to find the matched object of interest & determine its rotation angle. When I run the block diagram shown above, it does not have any error. However, it shows the rotation angle as zero no matter what it "really" is. Therefore, I changed the block diagram by adding the parameters, shown below:
    But in this case, when I run it, it shows the error that I have indicated in the subject line.
    If you need more details about my project to identify the problem, please let me know.
    Thanks in advance.
    Solved!
    Go to Solution.

    -Please go through pattern matching example which comes along with labview fiirst
    Go to labview Help>>Find Examples and you can search for example.
    -You have create template with angle range and what type of pattern matching you want use.
    -For this you have to use IMAQ Learn Pattern before using IMAQ Match Pattern 4
    Refer :http://zone.ni.com/reference/en-XX/help/370281U-01/imaqvision/imaq_match_pattern_4/
    Thanks
    uday,
    Please Mark the solution as accepted if your problem is solved and help author by clicking on kudoes
    Certified LabVIEW Associate Developer (CLAD) Using LV13

  • What do people think about the different Generic Java approaches?

    I have seen a lot of different approaches for Generic Java, and when people find problems with each approach the normal response has been: the other approach is worse with such and such a problem, do you have a better way?
    The different approaches I have seen are: (in no particular order)
    Please correct me if I am wrong and add other approaches if they are worthy of mention.
    1) PolyJ - by MIT
    This is a completely different approach than the others, that introduces a new where clause for bounding the types, and involves changing java byte codes in order to meet it's goals.
    Main comments were not a java way of doing things and far too greater risk making such big changes.
    2) Pizza - by Odersky & Wadler
    This aims at extending java in more ways than just adding Generics. The generic part of this was replaced by GJ, but with Pizza's ability to use primitives as generic types removed, and much bigger changes allowing GJ to interface with java.
    Main comments were that Pizza doesn't work well with java, and many things in Pizza were done in parallel with java, hence were no longer applicable.
    3) GJ - by Bracha, Odersky, Stoutamire & Wadler
    This creates classes with erased types and bridging methods, and inserts casts when required when going back to normal java code.
    Main comments are that type dependent operations such as new, instanceof, casting etc can't be done with parametric types, also it is not a very intuitive approach and it is difficult to work out what code should do.
    4) Runtime Generic Information - by Natali & Viroli
    Each instance holds information about its Runtime Type.
    Main comments from people were that this consumes way too much memory as each instance holds extra information about its type, and the performance would be bad due to checking Type information at runtime that would have been known at compile.
    5) NextGen - by Cartwright & Steele
    For each parameterized class an abstract base class with types erased is made and then for each new type a lightweight wrapper class and interface are created re-using code from the base class to keep the code small.
    Main comments from people were that this approach isn't as backwards compatible as GJ due to replacing the legacy classes with abstract base classes which can't be instantiated.
    6) .NET common runtime - by Kennedy & Syme
    This was written for adding Generics to C#, however the spec is also targeted at other languages such as VB.
    Main comments from people were that this approach isn't java, hence it is not subject to the restrictions of changing the JVM like java is.
    7) Fully Generated Generic Classes - by Agesen, Freund & Mitchell
    For each new type a new class is generated by a custom class loader, with all the code duplicated for each different type.
    Main comments from people were that the generated code size gets too big, and that it is lacking a base class for integration with legacy code.
    8) JSR-14 - by Sun
    This is meant to come up with a solution Generic Solution to be used in java. Currently it is heavily based on GJ and suffering from all the same problems as GJ, along with the fact that it is constantly undergoing change and so no one knows what to expect.
    See this forum for comments about it.
    As if we didn't have enough approaches already, here is yet another one that hopefully has all of the benefits, and none of the problems of the other approaches. It uses information learnt while experimenting with the other approaches. Now when people ask me if I think I have a better approach, I will have somewhere to point them to.
    (I will be happy to answer questions concerning this approach).
    9) Approach #x - by Phillips
    At compile time 1 type is made per generic type with the same name.
    e.g.class HashSet<TypeA> extends AbstractSet<TypeA> implements Cloneable, Serializable will be translated to a type: class HashSet extends AbstractSet implements Cloneable, SerializableAn instance of the class using Object as TypeA can now be created in 2 different ways.
    e.g.Set a = new HashSet();
    Set<Object> b = new HashSet<Object>();
    //a.getClass().equals(b.getClass()) is trueThis means that legacy class files don't even need to be re-compiled in order to work with the new classes. This approach is completely backwards compatible.
    Inside each type that was created from a generic type there is also some synthetic information.
    Information about each of the bounding types is stored in a synthetic field.
    Note that each bounding type may be bounded by a class and any number of interfaces, hence a ';' is used to separate bounding types. If there is no class Object is implied.
    e.g.class MyClass<TypeA extends Button implements Comparable, Runnable; TypeB> will be translated to a type: class MyClass {
      public static final Class[][] $GENERIC_DESCRIPTOR = {{Button.class, Comparable.class, Runnable.class}, {Object.class}};This information is used by a Custom Class Loader before generating a new class in order to ensure that the generic types are bounded correctly. It also gets used to establish if this class can be returned instead of a generated class (occurs when the generic types are the same as the bounding types, like for new HashSet<Object> above).
    There is another synthetic field of type byte[] that stores bytes in order for the Custom Class Loader to generate the new Type.
    There are also static methods corresponding to each method that contain the implementation for each method. These methods take parameters as required to gain access to fields, contructors, other methods, the calling object, the calling object class etc. Fields are passed to get and set values in the calling object. Constructors are passed to create new instances of the calling object. Other methods are passed when super methods are called from within the class. The calling object is almost always passed for non static methods, in order to do things with it. The class is passed when things like instanceof the generated type need to be done.
    Also in this class are any non private methods that were there before, using the Base Bounded Types, in order that the class can be used exactly as it was before Generics.
    Notes: the time consuming reflection stuff is only done once per class (not per instance) and stored in static fields. The other reflection stuff getting done is very quick in JDK1.4.1 (some earlier JDKs the same can not be said).
    Also these static methods can call each other in many circumstances (for example when the method getting called is private, final or static).
    As well as the ClassLoader and other classes required by it there is a Reflection class. This class is used to do things that are known to be safe (assuming the compiler generated the classes correctly) without throwing any exceptions.
    Here is a cut down version of the Reflection class: public final class Reflection {
      public static final Field getDeclaredField(Class aClass, String aName) {
        try {
          Field field = aClass.getDeclaredField(aName);
          field.setAccessible(true);
          return field;
        catch (Exception ex) {
          throw new Error(ex);
      public static final Object get(Field aField, Object anObject) {
        try {
          return aField.get(anObject);
        catch (Exception ex) {
          throw new Error(ex);
      public static final void set(Field aField, Object anObject, Object aValue) {
        try {
          aField.set(anObject, aValue);
        catch (Exception ex) {
          throw new Error(ex);
      public static final int getInt(Field aField, Object anObject) {
        try {
          return aField.getInt(anObject);
        catch (Exception ex) {
          throw new Error(ex);
      public static final void setInt(Field aField, Object anObject, int aValue) {
        try {
          aField.setInt(anObject, aValue);
        catch (Exception ex) {
          throw new Error(ex);
    }Last but not least, at Runtime one very lightweight wrapper class per type is created as required by the custom class loader. Basically the class loader uses the Generic Bytes as the template replacing the erased types with the new types. This can be even faster than loading a normal class file from disk, and creating it.
    Each of these classes has any non private methods that were there before, making calls to the generating class to perform their work. The reason they don't have any real code themselves is because that would lead to code bloat, however for very small methods they can keep their code inside their wrapper without effecting functionality.
    My final example assumes the following class name mangling convention:
    * A<component type> - Array
    * b - byte
    * c - char
    * C<class name length><class name> - Class
    * d - double
    * f - float
    * i - int
    * l - long
    * z - boolean
    Final Example: (very cut down version of Vector)public class Vector<TypeA> extends AbstractList<TypeA> implements RandomAccess, Cloneable, Serializable {
      protected Object[] elementData;
      protected int elementCount;
      protected int capacityIncrement;
      public Vector<TypeA>(int anInitialCapacity, int aCapacityIncrement) {
        if (anInitialCapacity < 0) {
          throw new IllegalArgumentException("Illegal Capacity: " + anInitialCapacity);
        elementData = new Object[initialCapacity];
        capacityIncrement = capacityIncrement;
      public synchronized void setElementAt(TypeA anObject, int anIndex) {
        if (anIndex >= elementCount) {
          throw new ArrayIndexOutOfBoundsException(anIndex + " >= " + elementCount);
        elementData[anIndex] = anObject;
    }would get translated as:public class Vector extends AbstractList implements RandomAccess, Cloneable, Serializable {
      public static final Class[][] $GENERIC_DESCRIPTOR = {{Object.class}};
      public static final byte[] $GENERIC_BYTES = {/*Generic Bytes Go Here*/};
      protected Object[] elementData;
      protected int elementCount;
      protected int capacityIncrement;
      private static final Field $0 = Reflection.getDeclaredField(Vector.class, "elementData"),
                                 $1 = Reflection.getDeclaredField(Vector.class, "elementCount"),
                                 $2 = Reflection.getDeclaredField(Vector.class, "capacityIncrement");
      static void $3(int _0, Field _1, Object _2, Field _3, int _4) {
        if (_0 < 0) {
          throw new IllegalArgumentException("Illegal Capacity: " + _0);
        Reflection.set(_1, _2, new Object[_0]);
        Reflection.setInt(_3, _2, _4);
      static void $4(int _0, Field _1, Object _2, Field _3, Object _4) {
        if (_0 >= Reflection.getInt(_1, _2)) {
          throw new ArrayIndexOutOfBoundsException(_0 + " >= " + Reflection.getInt(_1, _2));
        ((Object[])Reflection.get(_3, _2))[_0] = _4;
      public Vector(int anInitialCapacity, int aCapacityIncrement) {
        $3(anInitialCapacity, $0, this, $2, aCapacityIncrement);
      public synchronized void setElementAt(Object anObject, int anIndex) {
        $4(anIndex, $1, this, $0, anObject);
    } and new Vector<String> would get generated as:public class Vector$$C16java_lang_String extends AbstractList$$C16java_lang_String implements RandomAccess, Cloneable, Serializable {
      protected Object[] elementData;
      protected int elementCount;
      protected int capacityIncrement;
      private static final Field $0 = Reflection.getDeclaredField(Vector$$C16java_lang_String.class, "elementData"),
                                 $1 = Reflection.getDeclaredField(Vector$$C16java_lang_String.class, "elementCount"),
                                 $2 = Reflection.getDeclaredField(Vector$$C16java_lang_String.class, "capacityIncrement");
      public Vector$$C16java_lang_String(int anInitialCapacity, int aCapacityIncrement) {
        Vector.$3(anInitialCapacity, $0, this, $2, aCapacityIncrement);
      public synchronized void setElementAt(String anObject, int anIndex) {
        Vector.$4(anIndex, $1, this, $0, anObject);
    }Comparisons with other approaches:
    Compared with PolyJ this is a very java way of doing things, and further more it requires no changes to the JVM or the byte codes.
    Compared with Pizza this works very well with java and has been designed using the latest java technologies.
    Compared with GJ all type dependent operations can be done, and it is very intuitive, code does exactly the same thing it would have done if it was written by hand.
    Compared with Runtime Generic Information no extra information is stored in each instance and hence no extra runtime checks need to get done.
    Compared with NextGen this approach is completely backwards compatible. NextGen looks like it was trying to achieve the same goals, but aside from non backwards compatibility also suffered from the fact that Vector<String> didn't extend AbstractList<String> causing other minor problems. Also this approach doesn't create 2 types per new types like NextGen does (although this wasn't a big deal anyway). All that said NextGen was in my opinion a much better approach than GJ and most of the others.
    Compared to .NET common runtime this is java and doesn't require changes to the JVM.
    Compared to Fully Generated Generic Classes the classes generated by this approach are very lightweight wrappers, not full blown classes and also it does have a base class making integration with legacy code simple. It should be noted that the functionality of the Fully Generated Generic Classes is the same as this approach, that can't be said for the other approaches.
    Compared with JSR-14, this approach doesn't suffer from GJ's problems, also it should be clear what to expect from this approach. Hopefully JSR-14 can be changed before it is too late.

    (a) How you intend generic methods to be translated.
    Given that Vector and Vector<Object> are unrelated types,
    what would that type be represented as in the byte code of
    the method? In my approach Vector and Vector<Object> are related types. In fact the byte code signature of the existing method is exactly the same as it was in the legacy code using Vector.
    To re-emphasize what I had said when explaining my approach:
    System.out.println(Vector.class == Vector<Object>.class);  // displays true
    System.out.println(Vector.class == Vector<String>.class);  // displays false
    Vector vector1 = new Vector<Object>(); // legal
    Vector<Object> vector2 = new Vector();  // legal
    // Vector vector3 = new Vector<String>(); // illegal
    // Vector<String> vector4 = new Vector();  // illegal
    Vector<String> vector5 = new Vector<String>();  // legal
    You must also handle the case where the type
    parameter is itself a parameterized type in which the type
    parameter is not statically bound to a ground instantiation.This is also very straightforward: (let me know if I have misunderstood you)
    (translation of Vector given in my initial description)
    public class SampleClass<TypeA> {
      public static void main(String[] args) {
        System.out.println(new Vector<Vector<TypeA>>(10, 10));
    }would get translated as:public class SampleClass {
      public static final Class[][] $GENERIC_DESCRIPTOR = {{Object.class}};
      public static final byte[] $GENERIC_BYTES = {/*Generic Bytes Go Here*/};
      private static final Constructor $0 = Reflection.getDeclaredConstructor(Vector$$C16java_util_Vector.class, new Class[] {int.class, int.class});
      static void $1(Constructor _0, int _1, int _2) {
        try {
          System.out.println(Reflection.newInstance(_0, new Object[] {new Integer(_1), new Integer(_2)}));
        catch (Exception ex) {
          throw (RuntimeException)ex;
      public static void main(String[] args) {
        $1($0, 10, 10);
    }and SampleClass<String> would get generated as:public class SampleClass$$C16java_lang_String {
      private static final Constructor $0 = Reflection.getConstructor(Vector$$C37java_util_Vector$$C16java_lang_String.class, new Class[] {int.class, int.class});
      public static void main(String[] args) {
        SampleClass.$1($0, 10, 10);
    Also describe the implementation strategy for when these
    methods are public or protected (i.e. virtual).As I said in my initial description that for non final, non static, non private method invocations a Method may be passed into the implementing synthetic method as a parameter.
    Note: the following main method will display 'in B'.
    class A {
      public void foo() {
        System.out.println("in A");
    class B extends A {
      public void foo() {
        System.out.println("in B");
    public class QuickTest {
      public static void main(String[] args) {
        try {
          A.class.getMethod("foo", null).invoke(new B(), null);
        catch (Exception ex) {}
    }This is very important as foo() may be overwritten by a subclass as it is here. By passing a Method to the synthetic implementation this guarantees that covariance, invariance and contra variance all work exactly the same way as in java. This is a fundamental problem with many other approaches.
    (b) The runtime overhead associated with your translationAs we don't have a working solution to compare this to, performance comments are hard to state, but I hope this helps anyway.
    The Class Load time is affected in 4 ways. i) All the Generic Bytes exist in the Base Class, hence they don't need to be read from storage. ii) The custom class loader, time to parse the name and failed finds before it finally gets to define the class. iii) The generation of the generic bytes to parametric bytes (basically involves changing bytes from the Constant Pool worked out from a new Parametric type, Utf8, Class and the new Parametric Constant types may all be effected) iv) time to do the static Reflection stuff (this is the main source of the overhead). Basically this 1 time per class overhead is nothing to be concerned with, and Sun could always optimize this part further.
    The normal Runtime overhead (once Classes have been loaded) is affected mainly by reflection: On older JDKs the reflection was a lot slower, and so might have made a noticeable impact. On newer JDKs (since 1.4 I think), the reflection performance has been significantly improved. All the time consuming reflection is done once per class (stored in static fields). The normal reflection is very quick (almost identical to what is getting done without reflection). As the wrappers simply include a single method call to another method, these can be in-lined and hence made irrelevant. Furthermore it is not too difficult to make a parameter that would include small methods in the wrapper classes, as this does not affect functionality in the slightest, however in my testing I have found this to be unnecessary.
    (c) The space overhead (per instantiation)There are very small wrapper classes (one per new Type) that simply contain all non private methods, with single method calls to the implementing synthetic method. They also include any fields that were in the original class along with other synthetic fields used to store reflected information, so that the slow reflection only gets done once per new Type.
    (d) The per-instance space overheadNone.
    (e) Evidence that the proposed translation is sound and well-defined for all relevant cases (see below)Hope this is enough, if not let me know what extra proof you need.
    (f) Evidence for backward compatibility
    (For example, how does an old class file that passes a Vector
    to some method handle the case when the method receives a Vector<T>
    where T is a type parameter? In your translation these types are unrelated.)As explained above, in my approach these are only unrelated for T != Object, in the legacy case T == Object, hence legacy code passing in Vector is exactly the same as passing in Vector<Object>.
    (g) Evidence for forward compatibility
    (How, exactly, do class files that are compiled with a generics compiler run on an old VM)They run exactly the same way, the byte codes from this approach are all legal java, and all legal java is also legal in this approach. In order to take advantage of the Generics the Custom Class Loader would need to be used or else one would get ClassNotFoundExceptons, the same way they would if they tried using Collections on an old VM without the Collections there. The Custom Class Loader even works on older VMs (note it may run somewhat slower on older VMs).
    (h) A viable implementation strategyType specific instantiations are at Class Load time, when the Custom Class Loader gets asked for a new Class, it then generates it.
    The type specific instantiations are never shipped as they never get persisted. If you really wanted to save them all you need to do is save them with the same name (with the $$ and _'s etc), then the class loader would find them instead of generating them. There is little to be gained by doing this and the only reason I can think of for doing such a thing would be if there was some reason why the target VM couldn't use the Custom Class Loader (the Reflection class would still need to be sent as well, but that is nothing special). Basically they are always generated at Runtime unless a Class with the same name already exists in which case it would be used.
    The $GENERIC_DESCRIPTOR and $GENERIC_BYTES from the base class along with the new Type name are all that is required to generate the classes at runtime. However many other approaches can achieve the same thing for the generation, and approaches such as NextGen's template approach may be better. As this generation is only done once per class I didn't put much research into this area. The way it currently works is that the $GENERIC_DESCRIPTOR are basically used to verify that a malicious class files is not trying to create a non Type Safe Type, ie new Sample<Object>() when the class definition said class Sample<TypeA extends Button>. The $GENERIC_BYTES basically correspond to the normal bytes of a wrapper class file, except that in the constant pool it has some constants of a new Parametric Constant type that get replaced at class load time. These parametric constants (along with possibly Utf8 and Class constants) are replaced by the Classes at the end of the new type name, a little more complex than that but you probably get the general idea.
    These fine implementation details don't affect the approach so much anyway, as they basically come down to class load time performance. Much of the information in the $GENERIC_BYTES could have been worked out by reflection on the base type, however at least for now simply storing the bytes is a lot easier.
    Note: I have made a small syntax change to the requested class:
    public T(X datum) --> public T<X>(X datum)
    class T<X> {
      private X datum;
      public T<X>(X datum) {
        this.datum = datum;
      public T<T<X>> box() {
        return new T<T<X>>(this);
      public String toString() {
        return datum.toString();
      public static void main(String[] args) {
        T<String> t = new T<String>("boo!");
        System.out.println(t.box().box());
    }would get translated as:
    class T {
      public static final Class[][] $GENERIC_DESCRIPTOR = {{Object.class}};
      public static final byte[] $GENERIC_BYTES = {/*Generic Bytes Go Here*/};
      private Object datum;
      private static final Field $0 = Reflection.getDeclaredField(T.class, "datum");
      private static final Constructor $1 = Reflection.getDeclaredConstructor(T$$C1T.class, new Class[] {T.class});
      static void $2(Field _0, Object _1, Object _2) {
        Reflection.set(_0, _1, _2);
      static Object $3(Constructor _0, Object _1) {
        try {
          return Reflection.newInstance(_0, new Object[] {_1});
        catch (Exception ex) {
          throw (RuntimeException)ex;
      static String $4(Field _0, Object _1) {
        return Reflection.get(_0, _1).toString();
      static void $5() {
        T$$C16java_lang_String t = new T$$C16java_lang_String("boo!");
        System.out.println(t.box().box());
      public T(Object datum) {
        $2($0, this, datum);
      public T$$C1T box() {
        return (T$$C1T)$3($1, this);
      public String toString() {
        return $4($0, this);
      public static void main(String[] args) {
        $5();
    }as the generic bytes aren't very meaningful and by no means a requirement to this approach (NextGen's template method for generation may work just as well), here are the generated classes with some unused code commented out instead:
    class T$$C28T$$C22T$$C16java_lang_String {
      private T$$C22T$$C16java_lang_String datum;
      private static final Field $0 = Reflection.getDeclaredField(T$$C28T$$C22T$$C16java_lang_String.class, "datum");
    //  private static final Constructor $1 = Reflection.getDeclaredConstructor(T$$C34T$$C28T$$C22T$$C16java_lang_String.class, new Class[] {T$$C28T$$C22T$$C16java_lang_String.class});
      public T$$C28T$$C22T$$C16java_lang_String(T$$C22T$$C16java_lang_String datum) {
        T.$2($0, this, datum);
    //  public T$$C34T$$C28T$$C22T$$C16java_lang_String box() {
    //    return (T$$C34T$$C28T$$C22T$$C16java_lang_String)T.$3($1, this);
      public String toString() {
        return T.$4($0, this);
      public static void main(String[] args) {
        T.$5();
    class T$$C22T$$C16java_lang_String {
      private T$$C16java_lang_String datum;
      private static final Field $0 = Reflection.getDeclaredField(T$$C22T$$C16java_lang_String.class, "datum");
      private static final Constructor $1 = Reflection.getDeclaredConstructor(T$$C28T$$C22T$$C16java_lang_String.class, new Class[] {T$$C22T$$C16java_lang_String.class});
      public T$$C22T$$C16java_lang_String(T$$C16java_lang_String datum) {
        T.$2($0, this, datum);
      public T$$C28T$$C22T$$C16java_lang_String box() {
        return (T$$C28T$$C22T$$C16java_lang_String)T.$3($1, this);
      public String toString() {
        return T.$4($0, this);
      public static void main(String[] args) {
        T.$5();
    class T$$C1T {
      private T datum;
      private static final Field $0 = Reflection.getDeclaredField(T$$C1T.class, "datum");
    //  private static final Constructor $1 = Reflection.getDeclaredConstructor(T$$C6T$$C1T.class, new Class[] {T$$C1T.class});
      public T$$C1T(T datum) {
        T.$2($0, this, datum);
    //  public T$$C6T$$C1T box() {
    //    return (T$$C6T$$C1T)T.$3($1, this);
      public String toString() {
        return T.$4($0, this);
      public static void main(String[] args) {
        T.$5();
    class T$$C16java_lang_String {
      private String datum;
      private static final Field $0 = Reflection.getDeclaredField(T$$C16java_lang_String.class, "datum");
      private static final Constructor $1 = Reflection.getDeclaredConstructor(T$$C22T$$C16java_lang_String.class, new Class[] {T$$C16java_lang_String.class});
      public T$$C16java_lang_String(String datum) {
        T.$2($0, this, datum);
      public T$$C22T$$C16java_lang_String box() {
        return (T$$C22T$$C16java_lang_String)T.$3($1, this);
      public String toString() {
        return T.$4($0, this);
      public static void main(String[] args) {
        T.$5();
    }the methods from the Reflection class used in these answers not given in my initial description are:
      public static final Object newInstance(Constructor aConstructor, Object[] anArgsArray) throws Exception {
        try {
          return aConstructor.newInstance(anArgsArray);
        catch (InvocationTargetException ex) {
          Throwable cause = ex.getCause();
          if (ex instanceof Exception) {
            throw (Exception)ex;
          throw new Error(ex.getCause());
        catch (Exception ex) {
          throw new Error(ex);
      public static final Constructor getDeclaredConstructor(Class aClass, Class[] aParameterTypesArray) {
        try {
          Constructor constructor = aClass.getDeclaredConstructor(aParameterTypesArray);
          constructor.setAccessible(true);
          return constructor;
        catch (Exception ex) {
          throw new Error(ex);
      }

  • Alert about the loading time & Restrict the number of the rows retrieved

    Hi everybody, maybe the question is stupid, but I didn't find yet an answer...
    I'm using BIP 10.1.3.4.1
    Because I have many reports with a huge amount of data to display (in HTML format) and customers once clicked on "View" have to wait a lot of time, they asked me if there is the possibility to do the following things:
    1. restrict the number of the rows retrieved (this for each report); this request has to be dynamic (different rows' number for each report and for each user); so, I can't modify the query into the data template in order to retrieve a fixed number of rows;
    2. show an alert who says for example " The data loading will take 5 minutes. Do you want to proceed ? YES - NO" This to inform the users how much time they have to wait if they click on Yes.
    I checked under the Administrator TAB...but I didn't find nothing "native" about the two questions above.....
    So, I ask you if there is a way to activate these features (if they exist "native") or a workaround to implement what I described above.
    Any help will be appreciated.
    Thanks in advance
    Alex

    Hi Vetsrini, thanks for your answer.....but what does it mean ? There are no solutions for my requests ? I remember that Discoverer had the possibility to have an alert as I would like to have with BI Publisher and there was the possibility to choose how many rows it was required from the customer....Is it possible that with BIP is not applicable ?
    Have a good day
    Alex

  • Designer6i:  How change About Page template filename Web PL/SQL

    Hi
    how i can change the About Page template filename on Web Pl/Sql
    Thank!!

    Hi,
    Have you upgraded Apex?
    I assume you use XE EPG.
    Have you grant execute privilege on procedure to DAD user ANONYMOUS?
    GRANT EXECUTE ON WOLF_22.HELLO_WORLD TO ANONYMOUS;Have you changed wwv_flow_epg_include_mod_local that it allow execute WOLF_22.HELLO_WORLD?
    And write schema.procedure at upper case to function.
    If you have not upgraded Apex, run as SYS or SYSTEM
    CREATE OR REPLACE function FLOWS_020100.wwv_flow_epg_include_mod_local(
        procedure_name in varchar2)
    return boolean
    is
    begin
        -- Administrator note: the procedure_name input parameter may be in the format:
        --    procedure
        --    schema.procedure
        --    package.procedure
        --    schema.package.procedure
        -- If the expected input parameter is a procedure name only, the IN list code shown below
        -- can be modified to itemize the expected procedure names. Otherwise you must parse the
        -- procedure_name parameter and replace the simple code below with code that will evaluate
        -- all of the cases listed above.
        if upper(procedure_name) in (
              'WOLF_22.HELLO_WORLD'
        ) then
            return TRUE;
        else
            return FALSE;
        end if;
    end wwv_flow_epg_include_mod_local;
    /Regards,
    Jari

  • Designer6i: About Page template filename Web PL/SQL Applications

    how can change the About Page template filename Web PL/SQL Applications
    Thank!!!
    my e-mail is: [email protected]

    Hi,
    Have you upgraded Apex?
    I assume you use XE EPG.
    Have you grant execute privilege on procedure to DAD user ANONYMOUS?
    GRANT EXECUTE ON WOLF_22.HELLO_WORLD TO ANONYMOUS;Have you changed wwv_flow_epg_include_mod_local that it allow execute WOLF_22.HELLO_WORLD?
    And write schema.procedure at upper case to function.
    If you have not upgraded Apex, run as SYS or SYSTEM
    CREATE OR REPLACE function FLOWS_020100.wwv_flow_epg_include_mod_local(
        procedure_name in varchar2)
    return boolean
    is
    begin
        -- Administrator note: the procedure_name input parameter may be in the format:
        --    procedure
        --    schema.procedure
        --    package.procedure
        --    schema.package.procedure
        -- If the expected input parameter is a procedure name only, the IN list code shown below
        -- can be modified to itemize the expected procedure names. Otherwise you must parse the
        -- procedure_name parameter and replace the simple code below with code that will evaluate
        -- all of the cases listed above.
        if upper(procedure_name) in (
              'WOLF_22.HELLO_WORLD'
        ) then
            return TRUE;
        else
            return FALSE;
        end if;
    end wwv_flow_epg_include_mod_local;
    /Regards,
    Jari

  • Using dotx files opens the template file instead of instantiating a new docx file

    When I save Word documents as templates (dotx) in a SharePoint document library I noticed that they always open up as the template file (dotx) and not as a new Word document (docx). I expect that this happens because SharePoint simply opens up
    the document "as-is" - disregarding the logic which would normally create a docx document in offline mode. But strangely this works fine when opening the file in explorer view.
    Does anyone know if it is possible to use dotx files as intended in SharePoint? Was this behavior introduced when SharePoint 2007 was launched or was it perhaps included with a CU or SP?

    You can create a central hub containing content types (called the Content Type Hub).  Timer jobs run throughout the day to copy content types from the Hub to other site collections. Once the content types have been replicated to your site collection
    you would change your library settings to allow management of Content Types (Advanced in Library Settings).  Now you can select "Add from Existing content types" (Library settings) and add the content types to your library.  When you are
    done you can train your users to create new documents from your standard templates by selecting the content type by clicking the tiny triangle under the New Document button.
    Reference
    About Content Types:
    https://support.office.com/en-us/article/Introduction-to-content-types-and-content-type-publishing-e1277a2e-a1e8-4473-9126-91a0647766e5
    I did this on an Intranet I setup. When I created a new Project Site (not on Project Server), I added the content types to the document library (e.g. Charter, Plan, Status Reports, Project Document). I then took an additional step and I deleted the default
    "Document" content type. and moved "Project Document" to the  top of the list.  I then set the column "project name" (which I added to the project document content type) default value to the name of the project.  This
    way when people upload new docs to the library they are "Project Documents" and the Project Name column is populated with the name of the project by default.  - I hope this is helpful - Greg
    Gregory Frick

  • Do the Templates and Themes for iBooks Author include the flip page animation?

    Well, this question is concern about something similar asked by romondodavis on 28-mar-2012  (https://discussions.apple.com/message/17981772#17981772) and also answered by K T.
    So my question refers to know if when buying the Templates and Themes for iBooks Author the curl/turn/flip animation is included with them or should I have to buy necessary Pages so I can generate those industry standard e-pubs as K T suggests in order to get the turn page animation enabled by default?
    Thanks in advance
    Alex

    When asking about a product, always ask the seller...

  • How to allign an apDiv with the template centre alligned?

    Hi,
    I am trying to create a website in Adobe Dreamweaver CS4 but made a website template in Adobe Fireworks which was then imported in. My template was then center alligned with the apDivs placed on it containing all the links/images/rolloevers etc.
    When I viewed my website in the browser; the apDivs were all to the left while the template was in the center.
    Does anyone know how to I can make all my apDiv's alligned in the centre of the page so they are in the correct place on the template?
    Thanks

    Megan - here's the problem with doing it that way (perhaps your instructor will be interested):
    Fireworks (or Photoshop) are actually VERY good at replicating your layout in an HTML page. And that's part of the problem. They are too good. As soon as you begin to add NON graphic information to the page, the layout will pull apart forming gaps between the graphics and the text regions. This is very unsightly and unsuitable for the web. In addition, after you add text, if things still look good, don't congratulate yourself yet. Now try increasing the text display size in your browser. Things will go to pot in a hurry when you do that.
    Perhaps, though the most troubling aspect of this is that the code that FW uses for the layout is not only table-based (that's so 90's), but also it's invalid HTML. As you might imaging, you willl spend far more time on triage for the broken layouts than you would have spent to do it the right way to begin with.
    We all complained so bitterly to Adobe about this ridiculous situation that they finally took it out. Good riddance, I say.

  • Installed Microsoft word on iPad The templates are underlined in English but when you open them they are in a different language

    have just installed Microsoft word on iPad all the templates are underlined in English but when you open them they are in a different language

    Regarding pseudo-latin template filler language, you can learn about that standard practice at
    http://en.wikipedia.org/wiki/Lorem_ipsum

Maybe you are looking for

  • Contribute CS4 and CS5 file transfer (publish) problem on Windows 7 64 bit

    Have a problem with Contribute CS5 and CS4  on Windows 7 64 bit where upon editing a webiste for example to add a new page (or edit an existing one) and then clicking on "publish" a blank page appears on the website. To explain this further, If i mak

  • Read-only console ?

    In wls8.1 or in wls6.1/wls7.0 ..........is there any way out to make the console to be "READ-ONLY" ....any field or parameter that i need to set ? any workaround may be ??? -sabgita

  • Application Managed Encryption - ML6020

    Any Dell ML6020 Library firmware starting with a 6 (660G in this case) -  Encryption default is "None" How do you change the default to Application Managed ?  I currently cannot change it from Web client. From the Web Client - Setup - Encryption - Pa

  • BAPI FOR PARKING FI INVOICE

    All, Is there any BAPI  to park FI docuemnt in SAP nit MIRO ? Best Rgds SumaMani

  • Sales organisation is not defined.

    Hi every one, i made one intercompany cycle. my process from sales order to delivery to billing is completed. but when i am creating intercompany bill with refrence to delivery document. its giving an that sales organisation is not defined. because o