Native Connector Tool problems
I am trying to create Java wrappers for some legacy C++ libraries by using he Native Connector wizard under Sun Studio 11. I compile my C++ modules by using:
CC -Qoption ccfe -stabs=no%diffmang+no%diffmbr -xnativeconnect ...
I then tried to link a shared library by using
CC -G -xnativeconnect ...
but I got a link error:
/usr/ccs/bin/ld(ld_bids_support.so) Error(/data/for_ESI/development/CSCI/common/lib/libFdm.so): dwarf_op unexpected value 16
I next tried to link by using:
CC -G ...
and the link was successful.
I then tried to use the Native Connector wizard on my shared library, selecting all defaults. However, when the tool tries to generate the cdf file, the wizard dies with the following trace:
java.lang.NullPointerException
at com.sun.tools.nct.bids.DwarfNode.readDwarfNode(DwarfNode.java:375)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:212)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfNode.readChildren(DwarfNode.java:398)
at com.sun.tools.nct.bids.DwarfNode.readDwarfNode(DwarfNode.java:387)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:212)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfNode.readChildren(DwarfNode.java:398)
at com.sun.tools.nct.bids.DwarfNode.readDwarfNode(DwarfNode.java:387)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:212)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.DwarfReader.ReadDieRecursive(DwarfReader.java:218)
at com.sun.tools.nct.bids.D
You have run into a known problem in the native connector tool, bug 6329707.
Unfortunately, support for native connector is being dropped, and there are no current plans to fix this bug. (Fixing the bug properly requires a significant re-design of NCT, which is pointless for a product being dropped.)
If you have a service contract with Sun, you can have this bug escalated via your support channel.
If there is significant customer demand for NCT, the decision to drop it could be reversed. Apparently very few programmers ever used it.
Similar Messages
-
I am trying to find the sun connector tool to develop connectors and I do not seem to find it. Any hints?
thanks a lot!<BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by Andrew Buckby ([email protected]):
I have been trying to use the SUN Deploytool to create .ear file for auto-deployment within Orion.
There are some small differences such as the JNDI naming method. But the big problem is during auto-deployment where I get the following error:
Auto-unpacking Error in application hello-planet-sun: Error loading package at file:/D:/temp/j2ee/home/
applications/Hello-planet-sun/ejb-jar-ic.jar, Illegal use-caller-identity value, legal values are True and False.
Has anyone any ideas as to which XML file tag needs ammending to get an ear to auto-deploy? Or is there a better way in which to craete an ear file?
thanks in advance<HR></BLOCKQUOTE>
Andrew -
In the past there have been problems with the Deploytool from Sun as relates to Orion. I don't know if those problems have been worked out, but none-the-less I gave up on that a year or so ago. I use ant to create my ear files in practice but am currently evaluating the JDeveloper beta and thus far am reasonably impressed with the ease of use. I would give that a try if you have the bandiwdth to download it. Investigate Ant for another alternative - though you have to create your own web.xml and ejb-jar.xml files (as well as the application*.xml files). Sometimes I use the sucky tools that come with Orion (OCJ4) to help out as far as creating the related XML files and to create the ear file. Depends on my level of tolerance that particular day. -
Laptop mode tools problem with kernel 3.0
today I just updated the system and my laptop runs dramatically hotter after that. I read the archwiki, it does talk about the laptop mode tools problem with kernel 3.0 but when I opened the file /usr/sbin/laptop_mode, the lines which the wiki mentions are not there. Does anyone here have the same problem and can you offer the solution?
Here is my /usr/sbin/laptop_mode
#! /bin/sh
# Script to start or stop laptop_mode, and to control various settings of the
# kernel, hardware etc. that influence power consumption.
# This script is a part of Laptop Mode Tools. If you are running a supported
# power management daemon, this script will be automatically called on power
# state change.
# Configure laptop mode tools in /etc/laptop-mode/laptop-mode.conf, and in
# the broken-out config files in /etc/laptop-mode/conf.d.
# Please consult the manual pages laptop-mode.conf(8) and laptop_mode(8) for
# additional information.
# Maintainer: Ritesh Raj Sarraf ([email protected])
# Original Author: Bart Samwel ([email protected])
# Project home page: http://samwel.tk/laptop_mode
# Contributors to this script: Bart Samwel
# Kiko Piris
# Micha Feigin
# Andrew Morton
# Herve Eychenne
# Dax Kelson
# Jan Polacek
# ... and many others that I've stopped
# keeping track of.
# Based on a script for Linux 2.4 written by Jens Axboe.
set -a
# The laptop mode tools version number. Extracted by the installer makefile
# as well, so don't change the format!
LMTVERSION=1.59
# This script is loaded from multiple scripts to set the config defaults
# and to read the configuration on top of those. Only when the command is
# recognized does this script do anything else.
VERBOSE_OUTPUT=0
ENABLE_LAPTOP_MODE_ON_BATTERY=1
ENABLE_LAPTOP_MODE_ON_AC=0
ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED=0
PARTITIONS="auto /dev/mapper/*"
LM_BATT_MAX_LOST_WORK_SECONDS=600
LM_AC_MAX_LOST_WORK_SECONDS=360
DEF_MAX_AGE=30
LM_READAHEAD=3072
NOLM_READAHEAD=128
CONTROL_READAHEAD=1
CONTROL_NOATIME=0
USE_RELATIME=1
CONTROL_HD_IDLE_TIMEOUT=1
LM_AC_HD_IDLE_TIMEOUT=4 # 20 seconds
LM_BATT_HD_IDLE_TIMEOUT=4 # 20 seconds
NOLM_HD_IDLE_TIMEOUT=244 # 2 hours
DEF_UPDATE=5
DEF_XFS_AGE_BUFFER=15
DEF_XFS_SYNC_INTERVAL=30
DEF_XFS_BUFD_INTERVAL=1
XFS_HZ=100
CONTROL_MOUNT_OPTIONS=1
BATT_HD_POWERMGMT=1
LM_AC_HD_POWERMGMT=254
NOLM_AC_HD_POWERMGMT=254
CONTROL_HD_POWERMGMT=0
CONTROL_HD_WRITECACHE=0
NOLM_AC_HD_WRITECACHE=1
NOLM_BATT_HD_WRITECACHE=0
LM_HD_WRITECACHE=0
LM_DIRTY_RATIO=60
LM_DIRTY_BACKGROUND_RATIO=1
NOLM_DIRTY_BACKGROUND_RATIO=10
NOLM_DIRTY_RATIO=40
LM_SECONDS_BEFORE_SYNC=2
BATT_CPU_MAXFREQ=medium
BATT_CPU_MINFREQ=slowest
BATT_CPU_GOVERNOR=ondemand
BATT_CPU_IGNORE_NICE_LOAD=1
LM_AC_CPU_MAXFREQ=fastest
LM_AC_CPU_MINFREQ=slowest
LM_AC_CPU_GOVERNOR=ondemand
LM_AC_CPU_IGNORE_NICE_LOAD=1
NOLM_AC_CPU_MAXFREQ=fastest
NOLM_AC_CPU_MINFREQ=slowest
NOLM_AC_CPU_GOVERNOR=ondemand
NOLM_AC_CPU_IGNORE_NICE_LOAD=0
CONTROL_CPU_FREQUENCY=0
HD="/dev/[hs]d[abcdefgh]"
CONTROL_SYSLOG_CONF=0
LM_AC_SYSLOG_CONF=/etc/syslog-on-ac-with-lm.conf
NOLM_AC_SYSLOG_CONF=/etc/syslog-on-ac-without-lm.conf
BATT_SYSLOG_CONF=/etc/syslog-on-battery.conf
SYSLOG_CONF_SIGNAL_PROGRAM=syslogd
SYSLOG_CONF=/etc/syslog.conf
CONTROL_DPMS_STANDBY=0
BATT_DPMS_STANDBY=300
LM_AC_DPMS_STANDBY=1200
NOLM_AC_DPMS_STANDBY=1200
CONTROL_CPU_THROTTLING=0
BATT_CPU_THROTTLING=medium
LM_AC_CPU_THROTTLING=minimum
NOLM_AC_CPU_THROTTLING=minimum
CONTROL_START_STOP=1
CONTROL_TERMINAL=0
TERMINALS="/dev/vc/1 /dev/vcs1"
BATT_TERMINAL_BLANK_MINUTES=1
BATT_TERMINAL_POWERDOWN_MINUTES=2
LM_AC_TERMINAL_BLANK_MINUTES=10
LM_AC_TERMINAL_POWERDOWN_MINUTES=10
NOLM_AC_TERMINAL_BLANK_MINUTES=10
NOLM_AC_TERMINAL_POWERDOWN_MINUTES=50
ENABLE_AUTO_HIBERNATION=0
HIBERNATE_COMMAND=/usr/sbin/hibernate
AUTO_HIBERNATION_ON_CRITICAL_BATTERY_LEVEL=1
DISABLE_LAPTOP_MODE_ON_CRITICAL_BATTERY_LEVEL=1
AUTO_HIBERNATION_BATTERY_CHARGE_MAH=0
AUTO_HIBERNATION_BATTERY_CHARGE_MWH=0
MINIMUM_BATTERY_CHARGE_MAH=0
MINIMUM_BATTERY_CHARGE_MWH=0
ASSUME_SCSI_IS_SATA=1
CONTROL_BRIGHTNESS=0
BATT_BRIGHTNESS_COMMAND=false
LM_AC_BRIGHTNESS_COMMAND=false
NOLM_AC_BRIGHTNESS_COMMAND=false
LOG_TO_SYSLOG=1
DEBUG=0
ENABLE_LAPTOP_MODE_TOOLS=1
# Initialize the PATH Variable
export PATH="${PATH}":/bin:/sbin:/usr/bin:/usr/sbin
# This is a 2 phase locking approach. LMT_REQ_LOCK is the outer lock and LMT_INVOC_LOCK is the inner lock
# We take this approach to ensure the scenario that, "At any point when an event occurs (AC/BATT), the
# kernel can generate multiple events spanning over a couple of events. The first event is honored and
# lmt executes. If the last event triggered at the 9th second, there is a fair chance that a good amount
# of state change would have occured in the OS, to honor that state, we keep an outer lock (LMT_REQ_LOCK)
# handy, so that those changes can also be applied and not forgotten.
# Workflow:
# Event-1 is generated and lmt executes (lmt runtime could span 5-10 seconds)
# At seventh second, 4 events generate. But Event-1 is still running.
# We don't want to discard all the remaining 4 events, but at least honor 1 so that we can act to the changes
# that occured in the last 7 seconds.
# So, Event-2 acquire LMT_REQ_LOCK and waits to acquire LMT_INVOC_LOCK (which is acquire by Event-1)
LMT_REQ_LOCK="/var/lock/lmt-req.lock"
LMT_INVOC_LOCK="/var/lock/lmt-invoc.lock"
FLOCK=`which flock`
checkint ()
# $1 arg should be the string/integer
# that you want to check for as an integer.
echo $1 | grep "[^0-9]" > /dev/null 2>&1
return $?;
# Returns 1 if it is an integer
# Function to handle logging
LOGGER=`which logger`;
log ()
# $1 should be msg type
# $2 should be the real msg
if [ x$LOG_TO_SYSLOG = x1 ]; then
# NOTE: Add the check on $2 being empty, once you are confident
# that there aren't any bugs in logging. And no bugs in executing
# modules and logging
if [ -x $LOGGER -a "$1" != "STATUS" ]; then
#if [ -z $2 ]; then
# continue
#elif [ "$1" = "MSG" ]; then
if [ "$1" = "MSG" ]; then
logger -p daemon.info -t laptop-mode "$2";
elif [ "$1" = "ERR" ]; then
logger -p daemon.err -t laptop-mode "$2";
elif [ "$1" = "VERBOSE" ]; then
if [ x$VERBOSE_OUTPUT = x1 ]; then
logger -p daemon.debug -t laptop-mode "$2";
fi
else
logger -p daemon.notice -t laptop-mode "$2";
fi
fi
fi
if [ "$1" = "VERBOSE" ]; then
$LM_VERBOSE && echo "$2" >/dev/fd/2;
elif [ "$1" = "ERR" ]; then
echo "$2" >/dev/fd/2;
else
# Message of type MSG and STATUS can go to stdout.
echo "$2" >/dev/fd/1;
fi
enableDebug ()
# Check if debug is enabled
if [ x$(($(basename $1 | cut -d . -f1 | tr "[:lower:]" "[:upper:]" | sed 's/-/_/g')_DEBUG)) = x1 ]; then
set -vx
fi
disableDebug ()
# Check if debug is enabled
if [ x$(($(basename $1 | cut -d . -f1 | tr "[:lower:]" "[:upper:]" | sed 's/-/_/g')_DEBUG)) = x1 ]; then
set +vx
fi
# No default on these ones -- we need to detect if they have been set, for
# backward compatibility with MINIMUM_BATTERY_MINUTES etc.
AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT=
MINIMUM_BATTERY_CHARGE_PERCENT=
# Backward compatibility variable that is sometimes
# set externally (Debian init system)
unset VERBOSE
lmt_load_config ()
# Source config. Some config settings have been moved from the main config file
# to modular configuration files, and to support existing laptop-mode.conf
# files from earlier versions, we source the modular configuration files FIRST.
if [ -d /etc/laptop-mode/conf.d ] ; then
for CONF in /etc/laptop-mode/conf.d/*.conf ; do
if [ -r "$CONF" ] ; then
. "$CONF"
#Handle individual module debug settings
if [ "$DEBUG" -eq 1 ]; then
export $(basename $CONF | cut -d . -f1 | tr "[:lower:]" "[:upper:]" | sed 's/-/_/g')_DEBUG=1
log "VERBOSE" "Enabling debug mode for module $CONF"
fi
DEBUG=0
else
log "MSG" "Warning: Configuration file $CONF is not readable, skipping."
fi
done
fi
if [ -r /etc/laptop-mode/laptop-mode.conf ] ; then
. /etc/laptop-mode/laptop-mode.conf
else
log "ERR" "$0: Configuration file /etc/laptop-mode/laptop-mode.conf not present or not readable."
exit 1
fi
if [ x$ENABLE_LAPTOP_MODE_TOOLS = x0 ]; then
log "MSG" "laptop-mode-tools is disabled in config file. Exiting"
exit 0;
fi
# Add a simple bash debug mode switch
if [ "$DEBUG" -eq 1 ]; then
set -vx;
fi
# Support for old config settings
if [ "$AC_HD" != "" ] ; then
AC_HD_WITHOUT_LM="$AC_HD"
AC_HD_WITH_LM="$AC_HD"
fi
if [ "$VERBOSE" != "" ] ; then
VERBOSE_OUTPUT="$VERBOSE"
fi
if [ "$CPU_MAXFREQ" != "" ] ; then
BATT_CPU_MAXFREQ="$CPU_MAXFREQ"
fi
if [ "$MAX_AGE" != "" ] ; then
LM_BATT_MAX_LOST_WORK_SECONDS="$MAX_AGE"
LM_AC_MAX_LOST_WORK_SECONDS="$MAX_AGE"
fi
if [ "$DEF_AGE" != "" ] ; then
DEF_MAX_AGE="$DEF_AGE"
fi
if [ "$LAPTOP_MODE_ALWAYS_ON" != "" ] ; then
ENABLE_LAPTOP_MODE_ALWAYS="$LAPTOP_MODE_ALWAYS_ON"
fi
if [ "$LM_WHEN_LID_CLOSED" != "" ] ; then
ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED="$LM_WHEN_LID_CLOSED"
fi
if [ "$REMOUNT_PARTITIONS" != "" ] ; then
PARTITIONS="$REMOUNT_PARTITIONS"
fi
if [ "$READAHEAD" != "" ] ; then
LM_READAHEAD="$READAHEAD"
fi
if [ "$DO_REMOUNT_NOATIME" != "" ] ; then
CONTROL_NOATIME="$DO_REMOUNT_NOATIME"
fi
if [ "$DO_HD" != "" ] ; then
CONTROL_HD_IDLE_TIMEOUT="$DO_HD"
fi
if [ "$AC_HD_WITH_LM" != "" ] ; then
LM_AC_HD_IDLE_TIMEOUT="$AC_HD_WITH_LM"
fi
if [ "$AC_HD_WITHOUT_LM" != "" ] ; then
NOLM_HD_IDLE_TIMEOUT="$AC_HD_WITHOUT_LM"
fi
if [ "$BATT_HD" != "" ] ; then
LM_BATT_HD_IDLE_TIMEOUT="$BATT_HD"
fi
if [ "$DO_REMOUNTS" != "" ] ; then
CONTROL_MOUNT_OPTIONS="$DO_REMOUNTS"
fi
if [ "$DO_HD_POWERMGMT" != "" ] ; then
CONTROL_HD_POWERMGMT="$DO_HD_POWERMGMT"
fi
if [ "$AC_HDPARM_POWERMGMT_WITH_LM" != "" ] ; then
LM_AC_HD_POWERMGMT="$AC_HDPARM_POWERMGMT_WITH_LM"
fi
if [ "$AC_HDPARM_POWERMGMT_WITHOUT_LM" != "" ] ; then
NOLM_AC_HD_POWERMGMT="$AC_HDPARM_POWERMGMT_WITHOUT_LM"
fi
if [ "$BATT_HDPARM_POWERMGMT" != "" ] ; then
BATT_HD_POWERMGMT="$BATT_HDPARM_POWERMGMT"
fi
if [ "$DO_WRITECACHE" != "" ] ; then
CONTROL_HD_WRITECACHE="$DO_WRITECACHE"
fi
if [ "$AC_WRITECACHE_WITHOUT_LM" != "" ] ; then
NOLM_AC_HD_WRITECACHE="$AC_WRITECACHE_WITHOUT_LM"
fi
if [ "$BATT_WRITECACHE" != "" ] ; then
LM_HD_WRITECACHE="$BATT_WRITECACHE"
fi
if [ "$DIRTY_RATIO" != "" ]; then
LM_DIRTY_RATIO="$DIRTY_RATIO"
fi
if [ "$DIRTY_BACKGROUND_RATIO" != "" ] ; then
LM_DIRTY_BACKGROUND_RATIO="$DIRTY_BACKGROUND_RATIO"
fi
if [ "$DEF_DIRTY_RATIO" != "" ]; then
NOLM_DIRTY_RATIO="$DEF_DIRTY_RATIO"
fi
if [ "$DEF_DIRTY_BACKGROUND_RATIO" != "" ] ; then
NOLM_DIRTY_BACKGROUND_RATIO="$DEF_DIRTY_BACKGROUND_RATIO"
fi
if [ "$DO_CPU" != "" ] ; then
CONTROL_CPU_FREQUENCY="$DO_CPU"
fi
if [ "$CONTROL_CPU_MAXFREQ" != "" ] ; then
CONTROL_CPU_FREQUENCY="$CONTROL_CPU_MAXFREQ"
fi
if [ "$AC_CPU_MAXFREQ_WITH_LM" != "" ] ; then
LM_AC_CPU_MAXFREQ="$AC_CPU_MAXFREQ_WITH_LM"
fi
if [ "$AC_CPU_MAXFREQ_WITHOUT_LM" != "" ] ; then
NOLM_AC_CPU_MAXFREQ="$AC_CPU_MAXFREQ_WITHOUT_LM"
fi
if [ "$DO_SYSLOG" != "" ] ; then
CONTROL_SYSLOG_CONF="$DO_SYSLOG"
fi
if [ "$SYSLOG_SIGNAL_PROGRAM" != "" ] ;then
SYSLOG_CONF_SIGNAL_PROGRAM="$SYSLOG_SIGNAL_PROGRAM"
fi
if [ "$AC_SYSLOG_WITH_LM" != "" ] ; then
LM_AC_SYSLOG_CONF="$AC_SYSLOG_WITH_LM"
fi
if [ "$AC_SYSLOG_WITHOUT_LM" != "" ] ; then
NOLM_AC_SYSLOG_CONF="$AC_SYSLOG_WITHOUT_LM"
fi
if [ "$BATT_SYSLOG" != "" ] ; then
BATT_SYSLOG_CONF="$BATT_SYSLOG"
fi
if [ "$ENABLE_LAPTOP_MODE_ALWAYS" != "" ] ; then
ENABLE_LAPTOP_MODE_ON_AC="$ENABLE_LAPTOP_MODE_ALWAYS"
fi
if [ "$MINIMUM_BATTERY_MINUTES" != "" -a "$MINIMUM_BATTERY_CHARGE_PERCENT" = "" ] ; then
# Use a very conservative estimate (1% = 1 battery minute, 100 minutes in a battery)
# for backward compatibility.
MINIMUM_BATTERY_CHARGE_PERCENT="$MINIMUM_BATTERY_MINUTES"
fi
if [ -z "$MINIMUM_BATTERY_CHARGE_PERCENT" ] ; then
# Apply the default, now that we've determined that this is the minimum.
MINIMUM_BATTERY_CHARGE_PERCENT=3
fi
if [ "$AUTO_HIBERNATION_BATTERY_MINUTES" != "" -a "$AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT" = "" ] ; then
# Use a very conservative estimate (1% = 1 battery minute, 100 minutes in a battery)
# for backward compatibility.
AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT="$AUTO_HIBERNATION_BATTERY_MINUTES"
fi
if [ -z "$AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT" ] ; then
# Apply the default, now that we've determined that this is the minimum.
AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT=2
fi
# Postprocessing
if [ "$VERBOSE_OUTPUT" -ne 0 ] ; then
OUTPUT="/dev/stdout"
LM_VERBOSE="[ 1 = 1 ]"
else
OUTPUT="/dev/null"
LM_VERBOSE="[ 1 = 0 ]"
fi
if [ "$PARTITIONS" = "" ] ; then
PARTITIONS="auto /dev/mapper/*"
fi
# Expand shell wild cards immediately.
PARTITIONS=$( echo $PARTITIONS )
TERMINALS=$( echo $TERMINALS )
# Convert seconds to hdparm -S format
# Everything over 20 minutes is interpreted as 2 hours.
seconds_to_hdparm_S() {
if [ "$1" -eq 0 ] ; then
# disable.
echo 0
elif [ "$1" -gt 0 -a "$1" -lt 5 ] ; then
# 5 seconds minimum
echo 1
elif [ "$1" -le $((240*5)) ] ; then
# Values between 1 and 240 signify increments of 5 seconds
echo $(($1 / 5))
elif [ "$1" -lt $((30*60)) ] ; then
# Values between 20 and 30 minutes are rounded up to 30 minutes.
echo 241
elif [ "$1" -lt $((12*30*60)) ] ; then
# Values between 30 minutes and 6 hours (exclusive) yield values between
# 241 and 251, in 30-minute increments.
echo $(( 240 + ($1 / (30*60)) ))
else
# Larger values effectively indicate no timeout at all.
echo 0
fi
# Convert configured idle timeouts to hdparm -S format.
if [ "$LM_AC_HD_IDLE_TIMEOUT_SECONDS" != "" ] ; then
LM_AC_HD_IDLE_TIMEOUT=$(seconds_to_hdparm_S $LM_AC_HD_IDLE_TIMEOUT_SECONDS)
fi
if [ "$LM_BATT_HD_IDLE_TIMEOUT_SECONDS" != "" ] ; then
LM_BATT_HD_IDLE_TIMEOUT=$(seconds_to_hdparm_S $LM_BATT_HD_IDLE_TIMEOUT_SECONDS)
fi
if [ "$NOLM_HD_IDLE_TIMEOUT_SECONDS" != "" ] ; then
NOLM_HD_IDLE_TIMEOUT=$(seconds_to_hdparm_S $NOLM_HD_IDLE_TIMEOUT_SECONDS)
fi
# The main workhorse.
lmt_main_function ()
if [ "$1" = "status" ] ; then
# Display a status report.
log "STATUS" "Mounts:"
mount | sed "s/^/ /"
log "STATUS" " "
log "STATUS" "Drive power status:"
for disk in $HD; do
if [ -r $disk ]; then
hdparm -C $disk 2>/dev/null | sed "s/^/ /"
else
log "STATUS" " Cannot read $disk, permission denied - $0 needs to be run as root"
fi
done
log "STATUS" " "
log "STATUS" "(NOTE: drive settings affected by Laptop Mode cannot be retrieved.)"
log "STATUS" " "
log "STATUS" "Readahead states:"
cat /etc/mtab | while read DEV MP FST OPTS DUMP PASS ; do
# skip funny stuff
case "$FST" in
rootfs|unionfs|tmpfs|squashfs|sysfs|usbfs|proc|devpts) continue
esac
if [ -b $DEV ] ; then
if [ -r $DEV ] ; then
log "STATUS" " $DEV: $((`blockdev --getra $DEV` / 2)) kB"
else
log "STATUS" " Cannot read $DEV, permission denied - $0 needs to be run as root"
fi
fi
done
log "STATUS" " "
if [ -e /var/run/laptop-mode-tools/enabled ] ; then
log "STATUS" "Laptop Mode Tools is allowed to run: /var/run/laptop-mode-tools/enabled exists."
else
log "STATUS" "Laptop Mode Tools is NOT allowed to run: /var/run/laptop-mode-tools/enabled does not exist."
fi
log "STATUS" " "
STATFILES="/proc/sys/vm/laptop_mode /proc/apm /proc/pmu/info /proc/sys/vm/bdflush /proc/sys/vm/dirty_ratio /proc/sys/fs/xfs/age_buffer /proc/sys/fs/xfs/sync_interval /proc/sys/fs/xfs/lm_age_buffer /proc/sys/fs/xfs/lm_sync_interval /proc/sys/vm/pagebuf/lm_flush_age /proc/sys/fs/xfs/xfsbufd_centisecs /proc/sys/fs/xfs/xfssyncd_centisecs /proc/sys/vm/dirty_background_ratio /proc/sys/vm/dirty_expire_centisecs /proc/sys/fs/xfs/age_buffer/centisecs /proc/sys/vm/dirty_writeback_centisecs /sys/devices/system/cpu/*/cpufreq/cpuinfo_*_freq /sys/devices/system/cpu/*/cpufreq/scaling_governor /proc/acpi/button/lid/*/state /proc/acpi/ac_adapter/*/state /proc/acpi/battery/*/state /sys/class/power_supply/*/online /sys/class/power_supply/*/state"
for THISFILE in $STATFILES ; do
if [ -e "$THISFILE" ] ; then
log "STATUS" "$THISFILE:"
if [ -r "$THISFILE" ] ; then
cat "$THISFILE" | sed "s/^/ /"
else
log "STATUS" " Not accessible, permission denied - $0 needs to be run as root."
fi
log "STATUS" " "
fi
done
elif [ "$1" != "readconfig" -a "$1" != "defaults" ] ; then
KLEVEL="$(uname -r |
IFS='.-' read a b c
echo $a.$b
KMINOR="$(uname -r |
IFS='.-' read a b c d
# Strip any stuff from the end -- only the initial digits are part of the KMINOR.
echo $c | sed -e 's/\([[:digit:]]*\).*/\1/'
# Stop exporting everything -- what we do from here is private.
set +a
if [ "$1" = "--version" ] ; then
log "MSG" "Laptop Mode Tools $LMTVERSION"
exit 0
fi
if [ ! -e /proc/sys/vm/laptop_mode ] ; then
log "ERR" "Kernel does not have support for laptop mode. Please apply the laptop mode"
log "ERR" "patch or install a newer kernel."
exit 1
fi
if [ ! -w /proc/sys/vm/laptop_mode ] ; then
log "ERR" "You do not have enough privileges to enable laptop_mode."
exit 1
fi
INIT=0 # Display info in init script format?
FORCE=0 # Force reapplying the current state?
while [ "$1" != "" ] ; do
case "$1" in
init) INIT=1 ;;
force) FORCE=1 ;;
# Old options. We always do "auto" for any option now, but
# we still have to accept the options.
start) ;;
stop) ;;
auto) ;;
modules=*)
MODULES=$1
MODULES=${MODULES#"modules="}
devices=*)
DEVICES=$1
DEVICES=${DEVICES#"devices="}
*) log "ERR" "Unrecognized option $1."
exit 1 ;;
esac
shift
done
mkdir -p /var/run/laptop-mode-tools
# Used to display laptop mode state later on. This is the enabled/disabled
# state for laptop mode processing, it tells us nothing about whether laptop
# mode is actually _active_.
STATE=enabled
if [ "$ENABLE_LAPTOP_MODE_ON_BATTERY" -eq 0 -a "$ENABLE_LAPTOP_MODE_ON_AC" -eq 0 -a "$ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED" -eq 0 ] ; then
STATE=disabled
fi
# Determine the power state.
# First try /sys/class/power_supply/*
FOUND_SYS_CLASS_POWER_SUPPLY_AC=0
ON_AC=0
for POWER_SUPPLY in /sys/class/power_supply/* ; do
if [ -f $POWER_SUPPLY/type ] ; then
if [ "$(cat $POWER_SUPPLY/type)" = "Mains" ] ;then
log "VERBOSE" "Determining power state from $POWER_SUPPLY/online."
FOUND_SYS_CLASS_POWER_SUPPLY_AC=1
if [ "$(cat $POWER_SUPPLY/online)" = 1 ] ; then
ON_AC=1
fi
fi
fi
done
if [ $FOUND_SYS_CLASS_POWER_SUPPLY_AC = 1 ] ; then
# Already found it!
log "VERBOSE" "Not trying other options, already found a power supply."
elif [ -d /proc/acpi/ac_adapter ] ; then
log "VERBOSE" "Determining power state from /proc/acpi/ac_adapter."
ADAPTERS_FOUND=0
ON_AC=0
for ADAPTER in /proc/acpi/ac_adapter/* ; do
if [ -f $ADAPTER/state ] ; then
ADAPTERS_FOUND=1
STATUS=`awk '/^state: / { print $2 }' $ADAPTER/state`
if [ "$STATUS" = "on-line" ] ; then
ON_AC=1
fi
fi
done
if [ "$ADAPTERS_FOUND" -eq 0 ] ; then
ON_AC=1
fi
elif [ -f /proc/pmu/info ] ; then
log "VERBOSE" "Determining power state from /proc/pmu/info."
if ( grep -q "^AC Power.*0$" /proc/pmu/info ) ; then
log "VERBOSE" "/proc/pmu/info indicates absence of AC power."
ON_AC=0
else
# It is possible that there is no AC Power = 1 in the file,
# but we always assume AC power when we're not sure.
ON_AC=1
log "VERBOSE" "/proc/pmu/info indicates presence of AC power."
fi
elif [ -f /proc/apm ] ; then
log "VERBOSE" "Determining power state from /proc/apm."
read D1 D2 D3 APM_AC_STATE D0 </proc/apm
if [ "$APM_AC_STATE" = "0x00" ] ; then
ON_AC=0
else
ON_AC=1
fi
else
log "VERBOSE" "No /sys/class/power_supply, ACPI, APM or PMU power management information found -- assuming AC power is present."
ON_AC=1
fi
# Determine whether to activate or deactivate laptop mode.
ACTIVATE=0
if [ "$ON_AC" -eq 1 ] ; then
if [ "$ENABLE_LAPTOP_MODE_ON_AC" -ne 0 ] ; then
log "VERBOSE" "On AC power: Activating, because ENABLE_LAPTOP_MODE_ON_AC is set."
ACTIVATE=1
else
log "VERBOSE" "On AC power: Deactivating, because ENABLE_LAPTOP_MODE_ON_AC is not set."
ACTIVATE=0
fi
else
if [ "$ENABLE_LAPTOP_MODE_ON_BATTERY" -ne 0 ] ; then
log "VERBOSE" "On battery power: Activating, because ENABLE_LAPTOP_MODE_ON_BATTERY is set."
ACTIVATE=1
else
log "VERBOSE" "On battery power: Deactivating, because ENABLE_LAPTOP_MODE_ON_BATTERY is not set."
ACTIVATE=0
fi
fi
if [ "$ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED" -ne 0 -a "$ACTIVATE" -eq 0 ] ; then
if [ -x "`which hal-find-by-property`" ] ; then
HAL_LID_BUTTON=$(hal-find-by-property --key "button.type" --string "lid")
fi
if [ "$HAL_LID_BUTTON" != "" ] ; then
HAL_LID_BUTTON_STATE=$(hal-get-property --udi $(hal-find-by-property --key "button.type" --string "lid") --key "button.state.value")
if [ "$HAL_LID_BUTTON_STATE" = "true" ] ; then
log "VERBOSE" "Setting action to \"start\" because the lid is closed (says HAL)."
ACTIVATE=1
fi
elif [ -f /proc/acpi/button/lid/*/state ] ; then
if ( grep -q "closed" /proc/acpi/button/lid/*/state ) ; then
log "VERBOSE" 'Setting action to "start" because the lid is closed (says /proc/acpi/button/lid/*/state).'
ACTIVATE=1
fi
else
log "MSG" "Warning: ENABLE_LAPTOP_MODE_WHEN_LID_CLOSED is set, but there is no file"
log "MSG" "/proc/acpi/button/lid/.../state, and hal information is not available either!"
fi
fi
# If the init script has not been run or has been run with the "stop"
# argument, then we should never start laptop mode.
if [ ! -f /var/run/laptop-mode-tools/enabled ] ; then
log "VERBOSE" "Laptop mode disabled because /var/run/laptop-mode-tools/enabled is missing."
STATE=disabled
fi
if [ "$ACTIVATE" -eq 1 -a -f /etc/default/laptop-mode ] ; then
. /etc/default/laptop-mode
if ! ( echo "$ENABLE_LAPTOP_MODE" |grep y ) ; then
log "VERBOSE" "Not starting laptop mode because it is disabled in /etc/default/laptop-mode."
STATE=disabled
fi
fi
if [ "$STATE" = "disabled" ] ; then
ACTIVATE=0
fi
# Check whether we are allowed to activate the data-loss-sensitive stuff.
# If the battery charge is too low, we want to disable this, but not the
# other power-saving stuff.
if [ "$ACTIVATE" -eq 0 ] ; then
ACTIVATE_WITH_POSSIBLE_DATA_LOSS=0
elif [ "$ON_AC" = 1 ] ; then
log "VERBOSE" "On AC, not checking minimum battery charge."
ACTIVATE_WITH_POSSIBLE_DATA_LOSS=1
else
ACTIVATE_WITH_POSSIBLE_DATA_LOSS=1
ENOUGH_CHARGE=0
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=0
# Weird way of checking that /sys/class/power_supply is not empty -- but it works.
if [ "$(echo /sys/class/power_supply/*)" != '/sys/class/power_supply/*' ] ; then
log "VERBOSE" "Not on AC and we have battery information in /sys/class/power_supply/BAT* -- checking minimum battery charge."
for BATT in /sys/class/power_supply/* ; do
BATT_TYPE=$(cat $BATT/type)
log "VERBOSE" "$BATT is of type $BATT_TYPE."
if [ "$BATT_TYPE" != "Battery" ] ; then
log "VERBOSE" "Not of type \"Battery\", skipping."
else
PREV_ENOUGH_CHARGE=$ENOUGH_CHARGE
PREV_ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=$ENOUGH_CHARGE_TO_PREVENT_HIBERNATION
log "VERBOSE" "Checking levels for $BATT."
PRESENT=$(cat $BATT/present)
log "VERBOSE" "Present: $PRESENT."
# Only do if the battery is present
if [ "$PRESENT" -eq 1 ] ; then
FOUND_AN_ENABLED_CHECK=0
FOUND_AN_ENABLED_HIBERNATION_CHECK=0
# Get the remaining capacity.
IN_UAH=0
IN_UWH=0
if [ -f $BATT/charge_now ] ; then
REMAINING=$(cat $BATT/charge_now)
IN_UAH=1 # charge_* is in microAmpere-hours
elif [ -f $BATT/energy_now ] ; then
REMAINING=$(cat $BATT/energy_now)
IN_UWH=1 # energy_* is in microWatt-hours
else
REMAINING=0
fi
if [ -z "$REMAINING" -o "$REMAINING" -eq 0 ] ; then
log "VERBOSE" "Battery does not report remaining charge. Perhaps it is not present?"
REMAINING=0
fi
log "VERBOSE" "Remaining charge: $REMAINING"
if [ -f $BATT/charge_full_design ] ; then
CAPACITY=$(cat $BATT/charge_full_design)
elif [ -f $BATT/energy_full_design ] ; then
CAPACITY=$(cat $BATT/energy_full_design)
else
CAPACITY=0
fi
if [ -z "$CAPACITY" -o "$CAPACITY" -eq 0 ] ; then
log "VERBOSE" "Battery does not report design full charge, using non-design full charge."
if [ -f $BATT/charge_full ] ; then
CAPACITY=$(cat $BATT/charge_full)
elif [ -f $BATT/energy_full_design ] ; then
CAPACITY=$(cat $BATT/energy_full)
else
CAPACITY=0
fi
if [ -z "$CAPACITY" -o "$CAPACITY" -eq 0 ] ; then
log "VERBOSE" "Battery does not report non-design full charge."
CAPACITY=0
fi
fi
log "VERBOSE" "Full capacity: $CAPACITY"
# Check the charge percentage
if [ "$MINIMUM_BATTERY_CHARGE_PERCENT" -ne 0 ] ; then
FOUND_AN_ENABLED_CHECK=1
if [ "$CAPACITY" -eq 0 ] ; then
log "MSG" "WARNING: Battery does not report a capacity. Minimum battery"
log "MSG" "charge checking does not work without a design capacity."
ENOUGH_CHARGE=1
elif [ "$(($REMAINING * 100 / $CAPACITY))" -ge "$MINIMUM_BATTERY_CHARGE_PERCENT" ] ; then
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT" -ne 0 ] ; then
FOUND_AN_ENABLED_HIBERNATION_CHECK=1
if [ "$CAPACITY" -eq 0 ] ; then
log "MSG" "WARNING: Battery does not report a design capacity. Auto hibernation"
log "MSG" "does not work without a design capacity."
ENOUGH_CHARGE=1
elif [ "$(($REMAINING * 100 / $CAPACITY))" -ge "$AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT" ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
# $BATT/alarm is the design_capacity_warning of a battery.
ALARM_LEVEL=$(cat $BATT/alarm)
if [ "$ALARM_LEVEL" -ne 0 ] ; then
if [ "$REMAINING" -le "$ALARM_LEVEL" ] ; then
# Restore the state we had before checking this battery, so that
# this battery does not count as having enough charge.
ENOUGH_CHARGE=$PREV_ENOUGH_CHARGE
elif [ "$FOUND_AN_ENABLED_CHECK" -eq 0 ] ; then
# This is the only check that is enabled. In that case a non-critical
# battery level counts as "enough". (If we would count non-critical
# battery levels as enough *always*, then the other settings would
# have no effect; this is only a final fallback.)
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_ON_CRITICAL_BATTERY_LEVEL" -ne 0 ] ; then
if [ "$REMAINING" -le "$ALARM_LEVEL" ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=$PREV_ENOUGH_CHARGE_TO_PREVENT_HIBERNATION
elif [ "$FOUND_AN_ENABLED_HIBERNATION_CHECK" -eq 0 ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
# Fallback: hard values
if [ "$IN_UAH" -ne 0 ] ; then
if [ "$MINIMUM_BATTERY_CHARGE_MAH" -ne 0 ] ; then
FOUND_AN_ENABLED_CHECK=1
if [ "$REMAINING" -ge $((1000*"$MINIMUM_BATTERY_CHARGE_MAH")) ] ; then
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_BATTERY_CHARGE_MAH" -ne 0 ] ; then
FOUND_AN_ENABLED_HIBERNATION_CHECK=1
if [ "$REMAINING" -ge $((1000*"$AUTO_HIBERNATION_BATTERY_CHARGE_MAH")) ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
elif [ "$IN_UWH" -ne 0 ] ; then
if [ "$MINIMUM_BATTERY_CHARGE_MWH" -ne 0 ] ; then
FOUND_AN_ENABLED_CHECK=1
if [ "$REMAINING" -ge $((1000*"$MINIMUM_BATTERY_CHARGE_MWH")) ] ; then
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_BATTERY_CHARGE_MWH" -ne 0 ] ; then
FOUND_AN_ENABLED_HIBERNATION_CHECK=1
if [ "$REMAINING" -ge $((1000*"$AUTO_HIBERNATION_BATTERY_CHARGE_MWH")) ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
else
log "ERR" "Failed to determine battery charge. Battery charge units are not in"
log "ERR" "mWh, uWh, mAh or uAh."
fi
else
log "VERBOSE" "Battery is not present."
fi
fi
done
elif [ "$(echo /proc/acpi/battery/*)" != '/proc/acpi/battery/*' ] ; then
log "VERBOSE" "Not on AC and we have batteries in /proc/acpi/battery -- checking minimum battery charge."
for BATT in /proc/acpi/battery/* ; do
PREV_ENOUGH_CHARGE=$ENOUGH_CHARGE
PREV_ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=$ENOUGH_CHARGE_TO_PREVENT_HIBERNATION
BATT_STATE=$BATT/state
BATT_INFO=$BATT/info
log "VERBOSE" "Checking info and state for $BATT."
# Only do if the battery is present
if ( grep -q 'present:.*yes' $BATT_INFO ) ; then
FOUND_AN_ENABLED_CHECK=0
FOUND_AN_ENABLED_HIBERNATION_CHECK=0
# Get the remaining capacity.
REMAINING=`grep "remaining capacity:" $BATT_STATE | sed "s/.* \([0-9][0-9]* \).*/\1/" `
if [ -z "$REMAINING" ] ; then
log "VERBOSE" "Battery does not report remaining charte. Perhaps it is not present?"
REMAINING=0
fi
log "VERBOSE" "Remaining charge: $REMAINING"
CAPACITY=`grep "design capacity:" $BATT_INFO | sed "s/.* \([0-9][0-9]* \).*/\1/" `
if [ -z "$CAPACITY" ] ; then
log "VERBOSE" "Battery does not report capacity. Perhaps it is not present?"
CAPACITY=0
fi
log "VERBOSE" "Design capacity: $CAPACITY"
# Check the charge percentage
if [ "$MINIMUM_BATTERY_CHARGE_PERCENT" -ne 0 ] ; then
FOUND_AN_ENABLED_CHECK=1
if [ "$CAPACITY" -eq 0 ] ; then
log "MSG" "WARNING: Battery does not report a design capacity. Minimum battery"
log "MSG" "charge checking does not work without a design capacity."
ENOUGH_CHARGE=1
elif [ "$(($REMAINING * 100 / $CAPACITY))" -ge "$MINIMUM_BATTERY_CHARGE_PERCENT" ] ; then
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT" -ne 0 ] ; then
FOUND_AN_ENABLED_HIBERNATION_CHECK=1
if [ "$CAPACITY" -eq 0 ] ; then
log "MSG" "WARNING: Battery does not report a design capacity. Auto hibernation"
log "MSG" "does not work without a design capacity."
ENOUGH_CHARGE=1
elif [ "$(($REMAINING * 100 / $CAPACITY))" -ge "$AUTO_HIBERNATION_BATTERY_CHARGE_PERCENT" ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
# Fallback: hard values.
# Determine the reporting unit.
IN_MAH=0
IN_MWH=0
if ( grep -q mWh $BATT_INFO ) ; then
IN_MWH=1
elif ( grep -q mAh $BATT_INFO ) ; then
IN_MAH=1
fi
if [ "$IN_MAH" -ne 0 ] ; then
if [ "$MINIMUM_BATTERY_CHARGE_MAH" -ne 0 ] ; then
FOUND_AN_ENABLED_CHECK=1
if [ "$REMAINING" -ge "$MINIMUM_BATTERY_CHARGE_MAH" ] ; then
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_BATTERY_CHARGE_MAH" -ne 0 ] ; then
FOUND_AN_ENABLED_HIBERNATION_CHECK=1
if [ "$REMAINING" -ge "$AUTO_HIBERNATION_BATTERY_CHARGE_MAH" ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
elif [ "$IN_MWH" -ne 0 ] ; then
if [ "$MINIMUM_BATTERY_CHARGE_MWH" -ne 0 ] ; then
FOUND_AN_ENABLED_CHECK=1
if [ "$REMAINING" -ge "$MINIMUM_BATTERY_CHARGE_MWH" ] ; then
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_BATTERY_CHARGE_MWH" -ne 0 ] ; then
FOUND_AN_ENABLED_HIBERNATION_CHECK=1
if [ "$REMAINING" -ge "$AUTO_HIBERNATION_BATTERY_CHARGE_MWH" ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
else
log "ERR" "Failed to determine battery charge. Battery charge units are not in"
log "ERR" "mWh or mAh."
fi
CAP_STATE=`sed -r 's/^capacity state:\s*(.*)\s*$/\1/;t;d' "$BATT_STATE"`
if [ "$DISABLE_LAPTOP_MODE_ON_CRITICAL_BATTERY_LEVEL" -ne 0 ] ; then
if [ "$CAP_STATE" = "critical" ] ; then
# Restore the state we had before checking this battery, so that
# this battery does not count as having enough charge.
ENOUGH_CHARGE=$PREV_ENOUGH_CHARGE
elif [ "$FOUND_AN_ENABLED_CHECK" -eq 0 ] ; then
# This is the only check that is enabled. In that case a non-critical
# battery level counts as "enough". (If we would count non-critical
# battery levels as enough *always*, then the other settings would
# have no effect; this is only a final fallback.)
ENOUGH_CHARGE=1
fi
fi
if [ "$AUTO_HIBERNATION_ON_CRITICAL_BATTERY_LEVEL" -ne 0 ] ; then
if [ "$CAP_STATE" = "critical" ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=$PREV_ENOUGH_CHARGE_TO_PREVENT_HIBERNATION
elif [ "$FOUND_AN_ENABLED_HIBERNATION_CHECK" -eq 0 ] ; then
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
fi
fi
else
log "VERBOSE" "Battery is not present."
fi
done
else
ENOUGH_CHARGE=1
ENOUGH_CHARGE_TO_PREVENT_HIBERNATION=1
log "VERBOSE" "Not on AC and could not check battery state -- data loss sensitive features stay enabled and auto-hibernation will not work."
fi
if [ "$ENABLE_AUTO_HIBERNATION" -ne 0 -a "$ENOUGH_CHARGE_TO_PREVENT_HIBERNATION" -eq 0 ] ; then
log "VERBOSE" "None of the batteries have a charge above the auto-hibernation level."
log "VERBOSE" "Starting hibernation."
if [ -x $HIBERNATE_COMMAND ]; then
$HIBERNATE_COMMAND
elif [ -f /sys/power/state ]; then
grep -q disk /sys/power/state && echo disk > /sys/power/state
fi
# Don't continue -- if things are configured correctly, then we
# will be called on resume.
exit 0
fi
if [ "$ENOUGH_CHARGE" -eq 0 ] ; then
log "VERBOSE" "None of the batteries have a charge above the minimum level."
log "VERBOSE" "Deactivating data loss sensitive features."
ACTIVATE_WITH_POSSIBLE_DATA_LOSS=0
fi
fi
if [ "$INIT" -eq 0 ] ; then
log "MSG" "Laptop mode "
fi
# WAS_ACTIVE is used later on. If there is no /var/run/laptop-mode-tools/state, then
# we know that laptop mode wasn't active before.
WAS_ACTIVE=0
log "VERBOSE" "Checking if desired state is different from current state."
if [ -f /var/run/laptop-mode-tools/state ] ; then
read WAS_ACTIVE WAS_ON_AC WAS_ACTIVATE_WITH_POSSIBLE_DATA_LOSS WAS_STATE < /var/run/laptop-mode-tools/state
if [ "$WAS_STATE" != "" ] ; then
if [ "$WAS_ACTIVE" -eq "$ACTIVATE" -a "$WAS_ON_AC" -eq "$ON_AC" -a "$WAS_ACTIVATE_WITH_POSSIBLE_DATA_LOSS" -eq "$ACTIVATE_WITH_POSSIBLE_DATA_LOSS" -a "$WAS_STATE" = "$STATE" -a "$FORCE" -eq 0 ] ; then
log "MSG" "$STATE, "
if [ "$WAS_ACTIVE" -eq 1 ] ; then
log "MSG" "active [unchanged]"
if [ "$ACTIVATE_WITH_POSSIBLE_DATA_LOSS" -eq 0 ] ; then
log "MSG" " (Data-loss sensitive features disabled.)"
fi
else
log "MSG" "not active [unchanged]"
fi
exit 0
fi
fi
else
log "VERBOSE" "/var/run/laptop-mode-tools/state does not exist, no previous state."
fi
echo "$ACTIVATE $ON_AC $ACTIVATE_WITH_POSSIBLE_DATA_LOSS $STATE" > /var/run/laptop-mode-tools/state
if [ "$ACTIVATE" -eq 1 ] ; then
log "MSG" "$STATE, active"
if [ "$ACTIVATE_WITH_POSSIBLE_DATA_LOSS" -eq 0 ] ; then
log "MSG" " (Data-loss sensitive features disabled.)"
fi
else
log "MSG" "$STATE, not active"
fi
# Finally, call laptop-mode-tools modules. The modules can use the settings
# from the config files, but they may NOT assume the settings actually exist,
# as no defaults have been given for them.
# Note that the /usr/local/lib path is deprecated.
export FORCE STATE ON_AC ACTIVATE ACTIVATE_WITH_POSSIBLE_DATA_LOSS KLEVEL KMINOR WAS_ACTIVE LM_VERBOSE DEVICES
for SCRIPT in /usr/share/laptop-mode-tools/modules/* /usr/local/lib/laptop-mode-tools/modules/* /usr/local/share/laptop-mode-tools/modules/* /etc/laptop-mode/modules/* ; do
if [ -z "$MODULES" ] ; then
# If a module list has not been provided, execute all modules
EXECUTE_SCRIPT=1
else
# If a module list has been provided, execute only the listed
# modules.
EXECUTE_SCRIPT=0
for MODULE in $MODULES; do
# Attempt to remove the module name from the end of the
# full script path. If the module name matches the
# script, the name will be removed from the end of the
# full file path, leaving the path to the script. If
# there was not a match made, the module name would not
# be removed from the path, and $PATH_TO_SCRIPT would
# be the same as $SCRIPT.
PATH_TO_SCRIPT=${SCRIPT%%$MODULE}
# Execute the script if a match was found (module name
# was removed from the script path, making it shorter.
if [ $PATH_TO_SCRIPT != $SCRIPT ] ; then
EXECUTE_SCRIPT=1
fi
done
fi
if [ -x "$SCRIPT" -a $EXECUTE_SCRIPT -eq 1 ] ; then
log "VERBOSE" "Invoking module $SCRIPT."
SCRIPT_DEBUG=$SCRIPT; # We do this because in start-stop-programs module a $SCRIPT variable is used. That
# changes the whole meaning when passed to disableDebug ()
enableDebug $SCRIPT_DEBUG;
. $SCRIPT
disableDebug $SCRIPT_DEBUG;
else
log "VERBOSE" "Module $SCRIPT is not executable or is to be skipped."
fi
done
exit 0
# This fi closes the if for "readconfig". If I would have indented this one
# I would have indented the whole file. :)
fi
lmt_load_config
lock_retry ()
( $FLOCK -n -x -w 1 8 || exit 0;
i=10;
while [ $i -ge 1 ]
do
log "ERR" "Couldn't acquire lock. Retrying.... PID is $$\n"
$FLOCK -x -w 1 9 && lmt_main_function "$@" && break;
i=$(( $i - 1 ))
done
) 8>$LMT_REQ_LOCK
# Check and acquire locks and then exec.
( $FLOCK -n -x -w 1 8; ) 8>$LMT_REQ_LOCK
($FLOCK -n -x -w 1 9 && lmt_main_function "$@";) || lock_retry "$@"
) 9<>$LMT_INVOC_LOCK
# We do a special run of battery polling daemon here so that it does not get
# plagued by the lock. We need the polling daemon to be independent of any locks
if [ x$ENABLE_BATTERY_LEVEL_POLLING = x1 ] && [ x$BLACKLIST_IN_FLOCK = x1 ]; then
log "VERBOSE" "Battery level polling is enabled."
if [ x$ON_AC = x1 ] ; then
log "VERBOSE" "On AC, stopping the polling daemon."
# In AC mode we disable the polling daemon.
killall -q lm-polling-daemon
else
if ! pidof -x lm-polling-daemon ; then
log "VERBOSE" "On battery and there was no polling daemon yet, starting the polling daemon."
# If there is no polling daemon, we start one.
/usr/share/laptop-mode-tools/module-helpers/lm-polling-daemon < /dev/null > /dev/null 2> /dev/null &
fi
fi
else
log "VERBOSE" "Battery level polling is disabled."
fi
exit 0;
and here is the lines which archwiki mentions
case "$KLEVEL" in
"2.4" ) ;;
"2.6" ) ;;
log "ERR" "Unhandled kernel version: $KLEVEL ('uname -r' = '$(uname -r)')" >&2
exit 1
esacI had the problem but edited the line in /usr/sbin/laptop_mode and it worked. But thoes lines are not there anymore. I guess they changed it at the recent update of laptop-mode-tools.
Regarding your heat problem; is there any other thing you use to cut down power usage (from AUR maybe)? I use acpi_call from AUR had to edit lines there aswell, but it should be updated by now. -
Hi, I just started using PS on Mac, and having a polygonal lasso tool problem, when I make any selected area with the poly lasso and complete the shape, say for instance a series of sun rays, it ends up with a bunch of boxes in the shape, that I didn't put there, I'll attach a screen shot, any idea what is going on?
Hi, yeah, i tried that, have there been any bugs that relate to the polygonal lasso tool?
heres a post with the same problem, but no fix- this seems really silly
http://forums.adobe.com/thread/495664?tstart=0 -
I am having an ongoing problem with the Brush Tool in my PSE9.
I have the question written out in Word Pad but I can't seem to copy & paste it into this box. The 1st thing I need to know is how to copy & paste my simple text question here.
BobBarbara B.:
It has been several days since I heard anything from you on my ongoing Brush Tool problem. From your digging what have you found? In the past 10 days I have continued spotting B&W negative scans & trying to collect additional information on the propensity of the brush tool to create a line running across the image. Basically what I have found reinforces the 7 points/factors I outlined in posting #14 on 7/7/12. I'll go over & expand on those again here.
1) When the line runs it always goes from where I am currently spotting to some point I previously clicked & put a spot. This is not necessarily the most recent spot. It can travel to a spot I did 30 sec. ago (& have done several others in the interim). It does need to be on the visable portion of the screen.
2) As stated. The width of the line is the same as the width of the specific selected brush size. Usually between nos. 4 & 9. The tone of the line is the same as the tone selection (so far I have only experienced this with B&W).
3) The more I spot the slower the computer's reaction time becomes. After spotting for an hour, or two, I will see several seconds between the time I click on a spot & the time the spot actually appears on the negative. I have tried turning off PSE & rebooting it. This seems to speed things back up for a while.
4) When the situation in #3 occurs I obviously can't click rapidly.
5) I still don't understand why this happens at all. I move the curser outside of the image frame towards the Vert. & Horz. slider as I get ready to move to a new part of the image. I place the curser on the slider control a left click (as though to move the slider). Instead of moving the slider it shoots one of these lines out onto the image from under the slider control & out onto the image field to some point where there was a previous spotting click. These lines will often run half way across the image field. I have saved some of these examples & could attach them to an email for you to see.
6) Once one of these lines start appearing, or running, they seem to increase with frequency. Almost as though the software is developing a memory. As I say in #3, if I re boot PSE the memory either is erased, or at least reduced.
7) The only time the original statement is not totally true is when a line runs from under the slider (which is outside the viewing area) out into the visable image field.
Here are some additional factors I have noticed:
8) I normally begin spotting by setting the view drop down to "actual pixels". I notice that If I further magnify the image by then clicking once on the "zoom in" option I have a reduced frequency if these wild lines appearing. This may be due to the fact that when the image is larger I am working (stippling) at a slower rate.
9) If I have a hair or scratch on the neg. (normally using a drawn line to obliterate) & I use a stippling/clicking pattern rather than a drawn line the frequency or chance of a free running line is reduced - not eliminated, but reduced -
ELEMENTS 9 (LASSO TOOL PROBLEM)
ANY GOOD NEWS FROM PHOTOSHOP ON THE CONTINUING LASSO TOOL PROBLEM, LIKE , WHY DOES,NT IT WORK?
Try the Quick Selection tool for more control. Simply press the Alt key to change from plus to minus to correct mistakes as you go.
-
Oracle Outlook Connector Deployment Problem
I am trying to deploy Outlook 2003 with the Oracle Outlook connector. I am using the Custom installation Wizard provided by the Microsoft Office 2003 Support Tools.
I have set the Oracle connector to piggy-back on the install, however, it will not setup each user automatically. Even using the ini file. You have to manually setup each current user and new users as they come to a new pc.
I want Outlook the CIW to setup the Oracle connector automatically using a .PRF file (Outlook profile file). Unfortunately, with 3rd party connectors, you have to setup the .prf manually. But, other than the white paper provided by Microsoft, there isn't any info on how to manually setup the .PRF file that will setup the connector?
Do I need to call Microsoft (and spend the $250), Oracle, or is there anyone out there that has this info?
Any help would be beneficial to everyone trying to deploy the oracle connector to a large amount of machines without ever having to visit each pc.
Michael Scott
PC/Network Analyst
City of High Point, NCNot yet. I have issued a TAR with Oracle and have talked to a technician about this problem. He is now meeting with engineers to see if it is possible. I have also been on the phone with a software company called AutoProf and testing their software Profile Maker 8. The tech that I spoke with there is also working with the engineers to come up with a solution. Right now it looks as though some scripting is going to have to occur to get it to work right. I'll keep you posted.
-
JDBC Connector Pool problem?
I deployed my app to Sun App Server 8.2 and keep getting this error sequence:[#|2007-09-06T16:45:27.421-0400|INFO|sun-appserver-pe8.2|javax.enterprise.resource.resourceadapter|_ThreadID=18;|
RAR7005 : Cannot register pool from monitoring registry: null |#]
[#|2007-09-06T16:45:40.453-0400|SEVERE|sun-appserver-pe8.2|javax.enterprise.system.container.web|_ThreadID=17;|
WebModule[/Design_2]null
java.lang.NullPointerException
at com.sun.rave.web.ui.appbase.AbstractPageBean.afterPhase(AbstractPageBean.java:147)
at com.sun.rave.web.ui.appbase.faces.ViewHandlerImpl.afterPhase(ViewHandlerImpl.java:441)
at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:235)
at com.sun.faces.lifecycle.LifecycleImpl.render(LifecycleImpl.java:117)
at javax.faces.webapp.FacesServlet.service(FacesServlet.java:198)
at sun.reflect.GeneratedMethodAccessor456.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at org.apache.catalina.security.SecurityUtil$1.run(SecurityUtil.java:249)
at java.security.AccessController.doPrivileged(Native Method)
at javax.security.auth.Subject.doAsPrivileged(Subject.java:517)
at org.apache.catalina.security.SecurityUtil.execute(SecurityUtil.java:282)
at org.apache.catalina.security.SecurityUtil.doAsPrivilege(SecurityUtil.java:165)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:257)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at com.sun.rave.web.ui.util.UploadFilter.doFilter(UploadFilter.java:194)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:210)
at org.apache.catalina.core.ApplicationFilterChain.access$000(ApplicationFilterChain.java:55)
at org.apache.catalina.core.ApplicationFilterChain$1.run(ApplicationFilterChain.java:161)
at java.security.AccessController.doPrivileged(Native Method)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:157)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:263)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardContextValve.invokeInternal(StandardContextValve.java:225)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:173)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:132)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:551)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:933)
at org.apache.coyote.tomcat5.CoyoteAdapter.service(CoyoteAdapter.java:189)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.doProcess(ProcessorTask.java:604)
at com.sun.enterprise.web.connector.grizzly.ProcessorTask.process(ProcessorTask.java:475)
at com.sun.enterprise.web.connector.grizzly.ReadTask.executeProcessorTask(ReadTask.java:371)
at com.sun.enterprise.web.connector.grizzly.ReadTask.doTask(ReadTask.java:264)
at com.sun.enterprise.web.connector.grizzly.TaskBase.run(TaskBase.java:281)
at com.sun.enterprise.web.connector.grizzly.WorkerThread.run(WorkerThread.java:83)
|#]The documentation says this is an internal server error and that I should notify Sun, but I'm not sure how to do that.
One thing I noticed is that none of the connections to MySQL get released. So I eventually run out of connections. (I plan to operationally deploy to Tomcat, so I hope this problem doesn't migrate there.)
Has anyone else encountered this problem?If I explicitly open a connection, I always close close it when I am done with it. I assume code "written" by JSC does its own cleanup, which I believe it does.
Note that this is not a problem when I deploy my app to Tomcat. DB connections do no accumulate the way they do when I deploy to SunAppServer.
That's why I think it's an app server bug. -
Custom Connector Tool - How can I tie into LV IDE?
In my spare time I have written a little tool to help me wire the connector pane, similar in spirit to the icon editor. The eyestrain and wrist pain from going back and forth across the FP was one thing, but all of my mice seem to be junky making it very hard to hit some of the small connectors. Enter LV scripting again. My question is, how can I tie this into the LV IDE. Right now I put an LLB into my project folder and I can call the editor from the 'Tools' menu. This is not bad, but my dream would be to hook into the right-click menu used to launch the icon editor. Is this possible? I thought of editing the icon editor to give me a choice, but that seems clunky.
If you want to play with my editor, I have attached a copy. Put this LLB into your project folder (LV8.6 up) and after you relaunch LV, you should have an 'Edit Connector Pane...' entry in the tools menu. Select this item to edit that VIs connector pane. Still a work-in-progress, but I am never going back to the old-fashioned way. Before I take it to the next level, I'd like to know how to tie it in.
I may add rotation, but the next connector pane I rotate will be my first. This version is password protected since I don't want anybody who may take the CLD exam seeing how I stuff a QSM into the Timeout event case to save an extra loop.
The basics: On the left you have an image of the FP, you can select the target control by clicking in the image (if you like doing it the hard way). In the connector pane on the right, clicking drops the target into a connection, and auto-increments the target. You can use up and down arrows to select the target control. If you click an existing connection, the target is dropped and the old connection becomes the new target. Shift-clicking will grab an existing connection. Left and right arrows change the wire rule. Commit makes the changes to the VI. If the button says 'Close' all changes are commited and the VI will exit when you press it, if it says 'Cancel' pressing it will discard the last set of changes. Notice that you can also add descriptions to the controls.
Attachments:
Edit Connector.llb 162 KBIn case your interested in pursuing your own solution for right click integration, here is a snippet that gets the mouse button, coordinates and modifier using .Net. Sometimes I like to solve my own problems to expand my own knowledge, never know where it might come in handy.
I guess the JKI right click framework is great, but having to install that package delivery system really gets under my skin personally. But then again, it probably has its perks too. To each their own I guess.
Bear in mind this snippet is a proof of concept only, the MSDN API, I stumbled across looking to solve another problem. So no error handling or even proper coding technique. The next step would be to actually get the mouse button to fire a call back event, so you do not need to continuously monitor, but then again, I am filing this in the sandbox to play with another day.
Paul <--Always Learning!!!
sense and simplicity.
Browse my sample VIs? -
ColdFusion 9 Web Server Configuration Tool problem
I am using:
ColdFusion 9.01
Oracle iPlanet Web Server 7.0.13
Windows 2008 R2 Standard
When I try to use the Web Server Configuration Tool, I get the following message: warning "connectors/nsapi/intel-win64/prebuilt/jrun_nsapi.dll". Could it be an incompatability with the versions of software that I am using? Has anyone successfully configured ColdFusion 9.01 with Oracle iPlanet Web Server 7.0.13?
I can't get past this message (see below).
The wsconfig.log file has the following:
02/14 00:39:57 debug Parsing Sun ONE Web Server (iPlanet) configuration file G:\Program Files\Oracle\WebServer7\https-CFAdmin\config\magnus.conf
02/14 00:39:57 debug Parsing Sun ONE Web Server (iPlanet) configuration file G:\Program Files\Oracle\WebServer7\https-CFAdmin\config\obj.conf
02/14 00:39:57 error connectors/nsapi/intel-win64/prebuilt/jrun_nsapi.dll
java.io.FileNotFoundException: connectors/nsapi/intel-win64/prebuilt/jrun_nsapi.dll
at jrunx.connectorinstaller.JarUtils.extractToFile(JarUtils.java:72)
at jrunx.connectorinstaller.CIUtil.extractConnector(CIUtil.java:274)
at jrunx.connectorinstaller.iPlanetInstaller.installConnector(iPlanetInstaller.java:136)
at jrunx.connectorinstaller.ConnectorInstaller.installConnector(ConnectorInstaller.java:341)
at jrunx.connectorinstaller.ConnectorInstaller.doIt(ConnectorInstaller.java:275)
at jrunx.connectorinstaller.ConnectorInstaller.main(ConnectorInstaller.java:765)I'm using Solaris 10 SPARC, iPlanet 7.0.15, and I'm not going to use Apache!
Note: I made a slight modification to the LD_LIBRARY_PATH_64 reference in the startup script for iPlanet.
You have to do this to make the virtual server use the 64-bit libraries.
vi /sun/webserver7/https-<config_name>/bin/startserv
look for this line:
LD_LIBRARY_PATH_64="${SERVER_LIB_PATH_64}:${SERVER_JVM_LIBPATH}:${LD_LIBRARY_PATH_64}"; export LD_LIBRARY_PATH_64
and change it to this line:
LD_LIBRARY_PATH_64="${SERVER_LIB_PATH_64}:${SERVER_JVM_LIBPATH}:${LD_LIBRARY_PATH_64}:/us r/sfw/lib/sparcv9"; export LD_LIBRARY_PATH_64
I'm moving from CF8 ENT to CF9 ENT.
Here's the problem: iPlanet virtual server is configured for 64-bit operation; the connector in CF9 is 32-bit.
Question: What Program is Making this file ---> libjrun_nsapi.so ??
I'm assuming CF is creating it, so try to follow my logic here.....
CF9 doesn't want to produce libjrun_nsapi.so in 64-bit mode.
The file is located here:
/opt/coldfusion9/runtime/lib/wsconfig/1/libjrun_nsapi.so
Instead it spits out a 32-bit file....
# file libjrun_nsapi.so
libjrun_nsapi.so: ELF 32-bit MSB dynamic lib SPARC32PLUS Version 1, V8+ Required, dynamically linked, not stripped, no debugging information avail
It's supposed to look something like this:
# file libjrun_nsapi.so
libjrun_nsapi.so: ELF 64-bit MSB dynamic lib SPARCV9 Version 1, dynamically linked, not stripped
I found out that when I use CF8, the installer asks for 64-bit configuration during install,
AND the initial startup makes the 64-bit connector.
In CF9...no such menu item; it doesn't mention 32/64 bit anything.
How do you force CF9 to produce a 64-bit libjrun_nsapi.so file?
This creates the 32-bit file...
cf_root/runtime/bin/wsconfig -server coldfusion -ws sunone -dir /sun/webserver7/<config-name>/config -coldfusion -v
When I add -ws64 it breaks the script....
cf_root/runtime/bin/wsconfig -server coldfusion -ws64 sunone -dir /sun/webserver7/<config-name>/config -coldfusion -v
How do you force CF9 to produce a 64-bit libjrun_nsapi.so file?
FYI: I grabbed the libjrun_nsapi.so file from my CF8 ENT install, and used it in my CF9 ENT install.
No errors from the web server, but it's running dirt-slow now.
Could be the file because the libjrun_nsapi.so was created to connect with CF8, not CF9 !?
How do you force CF9 to produce a 64-bit libjrun_nsapi.so file? -
JavaFx 2.2.0 Native Package deploy problem on Windows
Hi,
I'm trying to compile a JavaFX native package on Windows 7 64 bit.
I've installed:
JDK 7U6 Beta
JavaFx sdk 2.2.0 Beta
Wix toolset 3.5
Inno Setup 5.5.1
When I run the tool installers *.exe and *.msi are created and they work as
installalation procedeure correctly completed.
The problem is when I run the application as I get a error message window
with title
C:\Program Files (x86)\NativePackage\runtime\jre7\bin\server\jvm.dll
and message
jvm.dll is not found
but I looked in C:\Program Files (x86)\NativePackage\runtime\jre7\bin\server and jvm.dll
exists.
Any idea?
Thank you
AndreaSolved,
running eclipse with a different JRE (C:\Program Files\Java\jdk1.7.0_06\bin\javaw.exe) has solved the problem.
To do that I simply edited my eclipse.ini and added -vm C:\Program Files\Java\jdk1.7.0_06\bin\javaw.exe, here my
eclipse.ini:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.200.v20120522-1813
-product
org.eclipse.epp.package.java.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vm
C:\Program Files\Java\jdk1.7.0_06\bin\javaw.exe
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Dhelp.lucene.tokenizer=standard
-Xms40m
-Xmx384m -
Photoshop CC text tool problem! Please HELP!
Everytime i try to use the text tool on photoshop CC it turn my picture black and keep flashing on and off.! Can someone please help me solve this problem? ( Please excuse my english, I'm still learning ^^")
Windows 8? Update your video card driver from the GPU maker's website.
-
Report Conversion Tool - problem with logging in table OBJ_G_MIGRATION
Hello Community-Members,
since several days I am searching different BO-Communities for a solution, but I didn't find any threats about my problem.
I am new to BO XI R3.1 and I want to convert deski-reports with the report conversion tool.
I tried it directly on the server-machine and all is ok (report is converted inclusive the logging in the audit-table OBJ_G_MIGRATION).
When I try it on my client-machine, the conversion is made successfully, but there is no result in the audit-table.
On the client-machine, I use the same connection like on the server machine and on both machines, I am logged on (in the report conversion tool) with the "Administrator"-user.
Has anyone an idea? Could it be a problem of user-rights in the Oracle-DB?
kind regards
GuennyHello Denis,
thank you for your reply.
From my client machine I can successfully test the connection to the Audit-DB. With non BO-Tools like "SQL Tools1.4.1" I can also connect to that DB.
After your reply I have tested once again and I have found something else strange.
If I convert a deski-report, and the conversion-status is "not converted", the Audit-DB is written (for example: error-text = "document cannot be read" / workaround = "remove protection password if set").
But when I convert the same report together with an other report, which will result in "partially converted", nothing is written to the Audit-DB (same effect as when I convert only reports with status "partially convertet").
regards
Guenny -
OIM 11.1.1.5.0 BP02 Generic UNIX Connector Configuration Problem
I have an inquiry regarding the configuration of the Generic UNIX Connector on 11.1.1.5 of OIM. Basically, when I try to do Primary Group Recon and Shell Recon, I get an error saying:
Oracle.iam.connectors.icfcommon.exceptions.IntegrationException: The value for a key [Host] is not defined in the provided map.
I have followed the documentation of the UNIX guide connector and also created an attribute in OIM Design Console called privateKey[LOADFROMFILE] containg a value of file:\\\home\oracle\Oracle\Middleware\Oracle_OIM1\server\ConnectorDefaultDirectory\SSH\config\oim_rsa.
I also tried to provisioned a user with the UNIX resource but I get an error message saying:
Running CREATEUSER
Target Class = oracle.iam.connectors.icfcommon.prov.ICProvisioningManager
<Jul 2, 2012 6:20:32 PM PHT> <Error> <ORACLE.IAM.CONNECTORS.ICFCOMMON.PROV.ICPROVISIONINGMANAGER> <BEA-000000> <oracle.iam.connectors.icfcommon.prov.ICProvisioningManager : createObject : Error while creating user
oracle.iam.connectors.icfcommon.exceptions.IntegrationException: The value for a key [Host] is not defined in the provided map.
at oracle.iam.connectors.icfcommon.util.MapUtil.getRequiredValue(MapUtil.java:94)
at oracle.iam.connectors.icfcommon.ConnectorFactory.createConnectorFacade(ConnectorFactory.java:122)
at oracle.iam.connectors.icfcommon.prov.ICProvisioningManager.init(ICProvisioningManager.java:133)
at oracle.iam.connectors.icfcommon.prov.ICProvisioningManager.init(ICProvisioningManager.java:141)
at oracle.iam.connectors.icfcommon.prov.ICProvisioningManager.createObject(ICProvisioningManager.java:253)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.thortech.xl.adapterGlue.ScheduleItemEvents.adpUNIXCREATEUSER.CREATEUSER(adpUNIXCREATEUSER.java:109)
at com.thortech.xl.adapterGlue.ScheduleItemEvents.adpUNIXCREATEUSER.implementation(adpUNIXCREATEUSER.java:54)
at com.thortech.xl.client.events.tcBaseEvent.run(tcBaseEvent.java:196)
at com.thortech.xl.dataobj.tcDataObj.runEvent(tcDataObj.java:2492)
at com.thortech.xl.dataobj.tcScheduleItem.runMilestoneEvent(tcScheduleItem.java:2917)
at com.thortech.xl.dataobj.tcScheduleItem.eventPostInsert(tcScheduleItem.java:547)
at com.thortech.xl.dataobj.tcDataObj.insert(tcDataObj.java:602)
at com.thortech.xl.dataobj.tcDataObj.save(tcDataObj.java:474)
at com.thortech.xl.ejb.beansimpl.tcProvisioningOperationsBean.retryTasks(tcProvisioningOperationsBean.java:4042)
at Thor.API.Operations.tcProvisioningOperationsIntfEJB.retryTasksx(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.oracle.pitchfork.spi.MethodInvocationVisitorImpl.visit(MethodInvocationVisitorImpl.java:34)
at weblogic.ejb.container.injection.EnvironmentInterceptorCallbackImpl.callback(EnvironmentInterceptorCallbackImpl.java:54)
at com.oracle.pitchfork.spi.EnvironmentInterceptor.invoke(EnvironmentInterceptor.java:42)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy329.retryTasksx(Unknown Source)
at Thor.API.Operations.tcProvisioningOperationsIntfEJB_4xftoh_tcProvisioningOperationsIntfRemoteImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionRemoteMethodInvoker.invoke(SessionRemoteMethodInvoker.java:40)
at Thor.API.Operations.tcProvisioningOperationsIntfEJB_4xftoh_tcProvisioningOperationsIntfRemoteImpl.retryTasksx(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at weblogic.ejb.container.internal.RemoteBusinessIntfProxy.invoke(RemoteBusinessIntfProxy.java:85)
at $Proxy167.retryTasksx(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
at $Proxy328.retryTasksx(Unknown Source)
at Thor.API.Operations.tcProvisioningOperationsIntfDelegate.retryTasks(Unknown Source)
at com.thortech.xl.webclient.actions.ResourceProfileProvisioningTasksAction.retryTasks(ResourceProfileProvisioningTasksAction.java:702)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.struts.actions.DispatchAction.dispatchMethod(DispatchAction.java:269)
at com.thortech.xl.webclient.actions.tcLookupDispatchAction.execute(tcLookupDispatchAction.java:133)
at com.thortech.xl.webclient.actions.tcActionBase.execute(tcActionBase.java:894)
at com.thortech.xl.webclient.actions.tcAction.execute(tcAction.java:213)
at org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:58)
at org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:67)
at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:305)
at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:191)
at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:301)
at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at com.thortech.xl.webclient.security.CSRFFilter.doFilter(CSRFFilter.java:76)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.iam.platform.auth.web.PwdMgmtNavigationFilter.doFilter(PwdMgmtNavigationFilter.java:121)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.iam.platform.auth.web.OIMAuthContextFilter.doFilter(OIMAuthContextFilter.java:108)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
at java.security.AccessController.doPrivileged(Native Method)
at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3730)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3696)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2273)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1490)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
>
I would like to ask if there some configuration step I have missed upon which causes this error?
Thanks in advance!Thanks for the reply! found out that I populated Connector Server with a value hence it was giving out this error. Thanks!
Edited by: 940359 on Jul 2, 2012 9:08 PM -
v\:* {behavior:url(#default#VML);}
o\:* {behavior:url(#default#VML);}
w\:* {behavior:url(#default#VML);}
.shape {behavior:url(#default#VML);}
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:"Table Normal";
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.0pt;
font-family:"Times New Roman","serif";}
Hello,
I’m having problems using the Upgrade tool, using the internal TFTP server try as I might I can’t persuade that there isn’t a firewall or ACL blocking TFTP:
- I’ve tried using v3.2 and v3.4
- I’ve tried using different machines
- I’ve turned off all firewalls and removed all ACLs from the APs
- I’ve traced the route across the network and can’t see any reason why any traffic would be blocked between the two
- I can confirm from the TACACS server that the upgrade tool is authenticating
===============================================================================================================
Using the external TFTP Server I can’t persuade it to work as there seems to be a fault in the script that the upgrade tool tries to run, I’ve looked throught the log the important bit seems to be below where it tries to answer exit to a yes/no question:
KCHCam.Gnd.Ap1130.4(config)#crypto ca enroll CISCO_IOS_SSC_Cert
The router has already generated a Self Signed Certificate for
trustpoint TP-self-signed-3298014188.
If you continue the existing trustpoint and Self Signed Certificate
will be deleted.
Do you want to continue generating a new Self Signed Certificate? [yes/no]: yes
% The fully-qualified domain name will not be included in the certificate
Generate Self Signed Router Certificate? [yes/no]: exit
% Please answer 'yes' or 'no'.
Generate Self Signed Router Certificate? [yes/no]: test ssc enable
% Please answer 'yes' or 'no'.
Generate Self Signed Router Certificate? [yes/no]: show crypto ca certificates
% Please answer 'yes' or 'no'.
Generate Self Signed Router Certificate? [yes/no]:
The failure message is below:
2010/08/10 11:17:50 ERROR 172.16.130.154 Unable to Get Root Certificate Status
Any help would be greatly appreciated.
Thanks
ChrisHave you try remove domain configuration on your autonomous ap? or just write erase and try again.
Maybe you are looking for
-
Help needed in cleaning raw data with odd delimiters in it
I am trying to write a sp, which adjust the number of columns based on the IN Parameter for the raw file. Raw (Id Int,RawData varchar2(5000)) RawData has actual data with delimiter, this column has all the raw file imported as is. e.g. data in RawDat
-
Itunes stops working when accessing itunes match, Windows 8
I installed itunes match a few months ago and it worked well once, but now whenever i start iTunes, it tries to access iTunes match for about 2 minutes, than I get a window "iTunes has stopped working" and it shuts down. I tried reinstalling, but no
-
My iPhone 4s does not ring for incoming calls. Ring tone set and used to ring. I think it has something to do with updating the IOS 7.0.4. When I updated to 7.0.3 the microphone stopped working. Had to call Apple Support and cleared phone and reloade
-
Using Media Widgets in iBooks Author
I'm writing an eBook in iBooks Author (which is a great Mac App!). I am adding audio widgets from time to time, and want to place them in the text next to a specific paragraph. However, I have discovered that if I try to include a second audio widget
-
How do i make videos full screen?
I just bought the 27 imac and I am having trouble getting the full screen button to work. Any suggestions?