Need to solve serious security problem with Oracle Reports URL
As mentioned repeatedly on this forum, Oracle Reports allows serious security breaches that allow users to see reports that they did not generate -- it's easy to guess a legal URL by changing the getjobid parameter.
I've reviewed the JavaDocs to part of the rwrun.jar file and reviewed some of the example report plugins. This shows promise in helping to solve this security problem but critical pieces are missing.
1) The javadocs are accurate for only 10g (9.0.4) but not correct for 10g (10.1.2+), which we are currently using. I need access to the updated version of this javadoc.
2) Even with the updated version of the JavaDoc, I haven't found a class from which to inherit that would give me the opportunity to generate random jobid values, which then would effectively prevent users from guessing other jobid values, and thereby gaining access to other's reports (which in our cases, may contain sensitive information.
3) We have found that we can send the parameter=value of EXPIRATION=1 which helps protect such information, but this requires that every program which invokes a report be modified to add this parameter. It would be far better for the report server to be configured to use a java class we write that inherits from some rwrun.jar class that would by default, add the EXPIRATION=1 parameter.
Hi,
Thanks for our replies. I will ask to an administrator about this security problem, now I know it depends of a security parameter.
But I would know if it could be possible to hide the technical name of the query in the url. It could improve the security level of our reports in a first time in this way.
Thanks a lot,
JW.
Similar Messages
-
Need Help FAST||! Big Problem with Oracle on Windows.
I have Oracle 9.2.0.6 on Windows 2003 Enterprise Edition SP2. My oracle SID in XRTY01PD. The OracleServiceXRTY01PD Startup Type is Automatic.
The Service starts but the database does not open. When I go to a command prompt and log into SQLPlus and connect using "/ as sysdba" I get connected to a idle instance. I tell it to Startup and it starts and opens no problem. No errors in the alter log or the event viewer.
I found a note: 1022458.6 dated 2007, that Oracle on NT has to have a 4 character SID. I can not believe that is this day and age I can only have 4 characters in the SID? Is this the case with Windows 2003? Does anyone know a work around for this?Hi Chris,
Take a look on this link:
- http://www.dba-oracle.com/oracle9iAS_tips_windows_service.htm
Cheers,
Francisco Munoz Alvarez
http://www.oraclenz.com -
A simple problem with oracle reports
Hello.
I am using oracle 10G reports and i built a report of employee personal information i add a picture on it.
against a employee id picture shown.
I added a formula in which a funtion return a path
e.g "return 'D:\Images\'||:empid||'.jpg';"
But the problem i faced that if any employee having no picture so it raised a error REP-0108 File not found.
i use many exeption handler but no gain.
if any body have it solution then pls. inform me.
Thanks.
krishna.I'm assuming you have no way of telling from the database whether the image exists or not. If so, then what you can do is first run a check to see whether the file is present in the path by opening it in read mode.
If this succeeds, close and return the filename. On an error, you can return a generic, placeholder filename such as logo.gif or beaker.gif, etc. -
Problem with oracle report server
Dear All
I have deployed Oracle application server 10g forms & report services on win 2003 server.
but problem is that after some interval report is getting hanged and not opening on web browser,
If i restart the report server then it will come very fast.
As i am new to this field Can anybody tell me how can i investigate the problem of report server.
Your reply would be greatly appreciated.
Thanksyou can modify the report engine in EM console, you can put one or more JVM for this as well that it have expiration day, this will be helpful, because you can put an iddle time, so when the engine get it, it will be restarted, as well max of process again will be restarted.
Greetings. -
Linked Folder Problem with Oracle Enterprise Pack for Eclipse
I need to migrate an Eclipse/Tomcat dynamic web project to Oracle Enterprise Pack for Eclipse/WebLogic.
The Eclipse/Tomcat shares JavaScript files with other projects by using an linked folder /JS under WebContent. It works fine. But the migrated version in Oracle Enterprise Pack for Eclipse shows warning: "Resouce WebContent/WEB-INF/JS/Common.js not found." (Common.js is a JavaScript file in the folder /JS). The linked folder is under WebContent, not WebContent/WEB-INF. For some unknown reason, the mapping is not correct. I deleted and re-created the linked folder, it was still the same. I then delete the lined folder and created a real folder and copied the files into under WebContent/JS folder, it solved the problem.
I want to use linked folder because I do not want to maintain multiple copies of the same set of files. Please help to solve this mapping problem with linked folders.
Thank you,
JerryThanks -- I tried Kosta's suggestion (which I had tried before) but still the same error.
I realized that on my development install (the rest of my team has a year+ old install) that I installed weblogic 12c version 12.1.3 (they have weblogic 12c 12.1.1). 12.1.3 requires jdk 1.8, correct? I started eclipse w/ jdk 1.8 & no more error. I added jdk 1.7 (jdk 1.7.0_45) as the default Java compiler in my Eclipse STS (sts 3.6.4; luna 4.4.2).
When I added a weblogic server instance to eclipse, 12.1.3 would not accept the jdk 1 compiler - it needed java 1.8. So ... I specified that.
I haven't tried it yet but -- is it ok to compile the code w/ jdk 1.7.0_45 and deploy it to weblogic 12.1.3 that uses jdk 1.8.0_40?
Thanks,
Bill -
Problem with Oracle 11g(32 bit) installation on windows 7 ultimate edition
Hello all,
I have a problem with Oracle 11g(32 bit) installation on windows 7 ultimate edition (32 bit).
I have successfully installed it immediately after OS installation. But today, i have decided to deinstall it and go for Oracle 10g version for 32 bit.
Everything went normal during installation, but i can see the services is not present in services.msc. Also its throwing some exception for dbca, netca
Now i tried to deinstall it and again go for 11g. But even the same story here..
Can anybody give me a solution for this..
-Regards
Rajesh MenonSaqib Alam wrote:
i recently install Oracle 11g R1 on windows 7 ultimate, i installed it and working perfectly.
ur problem is that u install latest version and now u trying to installing old version.
now u need to uninstall 10g and delete oracle from services, if the probleme presist then u should
install fresh windows 7.
Regards
SaqibNo need to install a fresh OS. That's like tearing your house down just because you wired a lamp wrong and blew a circuit breaker.
There are MeaLink notes on how to eradicate an Oracle install from Windows, but it boils down to this:
Stop all Oracle services
In the registery:
- Delete all oracle services from the register (HKLM\SYSTEM\CurrentControlSet
- Delete the entire Oralce folder from HKLM\Software
reboot
Delete the ORACLE_HOME directory and any other Oracle related directories/files. Offhand, it seems like there is an Oracle directory under Program Files.
reboot -
A lot of problems with Oracle BI SEE 11g
I have a lot of problems with Oracle BI SEE 11g
1. I upgraded my BI SEE 10 repository and can it openning in offline mode.
2. I can't deploy my upgraded repository in EM MW Control 11g - when i try to open Farm_bifoundation_domain->Business Intelligence->coreapplication, i get error "Stream closed
For more information, please see the server's error log for an entry beggining with: Server Exception during PPR, #41".
Opening Logs by EM control doesn't work too.
in file middleware\user_projects\domains\bifoundation_domain\servers\AdminServer\logs\AdminServer.log i see this event:
<Error> <HTTP> <oratest.itera.ru> <AdminServer> <[ACTIVE] ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <b639ac3e56e9a463:bd6fa7f:12ac7271e09:-8000-00000000000009e8> <1283408423378> <BEA-101019> <[ServletContext@329875093[app:em module:/em path:/em spec-version:2.5]] Servlet failed with IOException
java.io.IOException: Stream closed
Have you any ideas?
3. Ok, i taking sample repository and adding a new datasource in it:
Database: Oracle 8i
Connection pool:
Call interface OCI 8i/9i
Data source name:
(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP) (Host = oraapp) (Port = 1521) ) ) (CONNECT_DATA = (SID = MYSID) ) )
This settings are working fine in BI 10.
In BI 11g i get this funny error: "The connection has failed". I lost my time in attempts to connect to Oracle DB 8, but have not results. After that i hacked button "Query DBMS" at "Features" tab, pressed it and when get error "ORA-03134: Connections to this server version are no longer supported.".
Therefore Oracle 8 DB as datasource not supported. Am i right?
4. In sample repository i added oracle DB 10 as datasource, then added two dual tables and their connection to all layers.
Now i open BI Answers, and trying to create report with one dummy column, Now i have this error:
Error
View Display Error
Odbc driver returned an error (SQLExecDirectW).
Error Details
Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 42016] Check database specific features table. Must be able to push at least a single table reference to a remote database (HY000)
SQL Issued: SELECT s_0, s_1 FROM ( SELECT 0 s_0, "ORA10G"."dual"."dummy" s_1 FROM "ORA10G" ) djm
Database features are defaults.
Does anyone solve this problem?Turribeach, Thanks for you time.
1. It was not a question
3. Yes, i have read platforms, but not supported datasources. Now i see, that BI 11g support as datasource Oracle DB 9.2.0.7 or higher. I am sorry.
4. I'm using OCI connection type
Now i recreate Database in Physical schema and answers is showing report data for me! But only from one table, when i use columns from to tables from one datasource, i geting error:
Error View Display Error Odbc driver returned an error (SQLExecDirectW). Error Details Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 43113] Message returned from OBIS. [nQSError: 46008] Internal error: File server/Utility/Server/DataType/SUKeyCompare.cpp, line 875. (HY000) SQL Issued: SELECT s_0, s_1, s_2 FROM ( SELECT 0 s_0, "Ora10g"."hierarchy_obj_cust_v"."sort_order" s_1, "Ora10g"."NSI_SCHEMA"."SCHEMA_NAME" s_2 FROM "Ora10g" ) djm
Edited by: serzzzh on 03.09.2010 3:44 -
Remote JDBC Problem with Oracle BPM Studio
Hi all, i am facing the Remote JDBC Problem with Oracle BPM Studio.
When i configure a Remote JDBC Connection for SQL in BPM Studio, it prompt me an error.
The SQL Connection is configured as following :
External Resource:
Name : MyDS
Type : SQL Database
Supported Types : Remote JDBC
Details:
Database Type : BPM's Oracle Driver Version:10, 11
J2EE : WLS
Lookup Name : MyAppDS
Configuration for "WLS"
Name : WLS
Type : J2EE Application Server
Supported Types : GENERIC_J2EE
Details:
Initial Context Factory : weblogic.jndi.WLInitialContextFactory
URL : t3://localhost:7001
But, when i try to connect to the Database by using this configuration, I will get an Exception.
An exception occurred while getting a resource from a connector.
Detail:The connector [[ MyDS : SQL : REMOTE_JDBC ]] caused an exception when getting a resource.
Caused by: An exception occurred while getting a resource from a connector.
Detail:The connector [[ WLS : J2EE : J2EE ]] caused an exception when getting a resource.
Caused by: javax.naming.NoInitialContextException: Cannot instantiate class: weblogic.jndi.WLInitialContextFactory [[ Root exception is java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory ]]
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:657)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
at javax.naming.InitialContext.init(InitialContext.java:223)
at javax.naming.InitialContext.<init>(InitialContext.java:197)
at fuego.jndi.FaultTolerantContext.createContext(FaultTolerantContext.java:726)
at fuego.jndi.FaultTolerantContext.<init>(FaultTolerantContext.java:79)
at fuego.connector.impl.GenericJ2EEConnector.createInitialContext(GenericJ2EEConnector.java:177)
at fuego.connector.impl.GenericJ2EEConnector.createStandaloneContext(GenericJ2EEConnector.java:98)
at fuego.connector.impl.BaseJ2EEConnector.getResource(BaseJ2EEConnector.java:92)
at fuego.connector.impl.BaseJ2EEConnector.getResource(BaseJ2EEConnector.java:76)
at fuego.connector.J2EEHelper.getReadOnlyContext(J2EEHelper.java:86)
... 12 more
Edited by: user2262377 on Jun 22, 2009 4:01 PMI guess the weblogic.jar is not included in the studio.
So, i added weblogic.jar (Weblogic 10.3) and wlclient.jar (Weblogic 10.3)
It is working in my simple java code. But, still not working in BPM Studio.
The error logs:
An exception occurred while getting a resource from a connector.
Detail:The connector [OFT_APP_DS:SQL:REMOTE_JDBC] caused an exception when getting a resource.
Caused by: java.lang.Object cannot be cast to java.io.Serializable
fuego.connector.ConnectorException: An exception occurred while getting a resource from a connector.
Detail:The connector [OFT_APP_DS:SQL:REMOTE_JDBC] caused an exception when getting a resource.
at fuego.connector.ConnectorException.exceptionOnGetResource(ConnectorException.java:88)
at fuego.connector.JDBCHelper.getReadOnlyConnection(JDBCHelper.java:93)
at fuego.sqlintrospector.BrowserPanel.connect(BrowserPanel.java:395)
at fuego.sqlintrospector.BrowserPanel.populateTree(BrowserPanel.java:200)
at fuego.ui.wizards.ui.CheckTreeBrowser$1.construct(CheckTreeBrowser.java:63)
at fuego.ui.SwingWorker$2.run(SwingWorker.java:39)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassCastException: java.lang.Object cannot be cast to java.io.Serializable
at weblogic.iiop.IIOPOutputStream.writeAny(IIOPOutputStream.java:1588)
at weblogic.iiop.IIOPOutputStream.writeObject(IIOPOutputStream.java:2231)
at weblogic.utils.io.ObjectStreamClass.writeFields(ObjectStreamClass.java:413)
at weblogic.corba.utils.ValueHandlerImpl.writeValueData(ValueHandlerImpl.java:235)
at weblogic.corba.utils.ValueHandlerImpl.writeValueData(ValueHandlerImpl.java:225)
at weblogic.corba.utils.ValueHandlerImpl.writeValue(ValueHandlerImpl.java:182)
at weblogic.iiop.IIOPOutputStream.write_value(IIOPOutputStream.java:1963)
at weblogic.iiop.IIOPOutputStream.write_value(IIOPOutputStream.java:2001)
at weblogic.iiop.IIOPOutputStream.writeObject(IIOPOutputStream.java:2266)
at weblogic.jdbc.common.internal.RmiDataSource_WLSkel.invoke(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
at weblogic.rmi.cluster.ClusterableServerRef.invoke(ClusterableServerRef.java:230)
at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:477)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
at weblogic.security.service.SecurityManager.runAs(Unknown Source)
at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:473)
at weblogic.rmi.internal.wls.WLSExecuteRequest.run(WLSExecuteRequest.java:118)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:173) -
Performance problem with Oracle
We are currently getting a system developed in Unix/Weblogic/Tomcat/Oracle environment. We have developed a screen that contains 5 or 6 different parameters to select from. We could select multiple parameters in each of these selections. The idea behind the subsequent screens is to attach information to already existing data/ possible future data that matches the selection criteria.
Based on these selections, existing data located within the system in a table is searched and those that match are selected. Also new rows are created in the table against combinations that do not currently have a match. Frequently multiple parameters are selected, and 2000 different combinations need to be searched in the table. Of these selections, only about 100 or 200 combinations will be available in existing data. So the system is having to insert 1800 rows. The user meanwhile waits for the system to come up with data based on their selections. The user is not willing to wait more than 30 seconds to get to the next screen. In the above mentioned scenario, the system takes more than an hour to insert the new records and bring the information up. We need suggestions to see if the performance can be improved this drastically. If not what are the alternatives? ThanksThe #1 cause for performance problems with Oracle is not using it correctly.
I find it hard to believe that with the small data volumes mentioned, that you can have perfornance problems.
You need to perform a sanity check. Are you using Oracle correctly? Do you know what bind variables are? Are you using indexes correctly? Are you using PL/SQL correctly? Is the instance setup correctly? What about storage, are you using SAME (RAID10) or something else? Etc.
Facts. Oracle peforms exceptionally well. Oracle exceptionally well.
Simple example from a benchmark I did on this exact same subject. App-tier developers not understanding and not using Oracle correctly. Incorrect usage of Oracle doing a 100,000 SQL statements. 24+ minutes elapsed time. Doing those exact same 100,000 SQL statement correctly (using bind variables) - 8 seconds elapsed time. (benchmark using Oracle 10.1.0.3 on a Sunfire V20z server)
But then you need to use Oracle correctly. Are you familiar with the Oracle Concepts Guide? Have you read the Oracle Application Developer Fundamentals Guide? -
Hi everybody, I am in Turkey on a long assignment, I need help solving a big problem on my macbook pro os 10.9.3. The other week my wife visited some website and now we have a redirect virus of some sort, and every other time when we click on a link or anywhere on the page we are redirected to this casino web site, https://casino.7bets10.com/tr/?from=hy9yKXD43jSC-8Oxbw4femNd7ZgqdRLk-dHJpeG9uaXR l. Its the same whether on Chrome or Safari. Does anyone have a solution, thank you!
1. This procedure is a diagnostic test. It changes nothing, for better or worse, and therefore will not, in itself, solve the problem. But with the aid of the test results, the solution may take a few minutes, instead of hours or days.
Don't be put off merely by the seeming complexity of these instructions. The process is much less complicated than the description. You do harder tasks with the computer all the time.
2. If you don't already have a current backup, back up all data before doing anything else. The backup is necessary on general principle, not because of anything in the test procedure. Backup is always a must, and when you're having any kind of trouble with the computer, you may be at higher than usual risk of losing data, whether you follow these instructions or not.
There are ways to back up a computer that isn't fully functional. Ask if you need guidance.
3. Below are instructions to run a UNIX shell script, a type of program. All it does is to collect information about the state of the computer. That information goes nowhere unless you choose to share it. However, you should be cautious about running any kind of program (not just a shell script) at the behest of a stranger. If you have doubts, search this site for other discussions in which this procedure has been followed without any report of ill effects. If you can't satisfy yourself that the instructions are safe, don't follow them. Ask for other options.
Here's a summary of what you need to do, if you choose to proceed:
Copy a line of text in this window to the Clipboard.
Paste into the window of another application.
Wait for the test to run. It usually takes a few minutes.
Paste the results, which will have been copied automatically, back into a reply on this page.
The sequence is: copy, paste, wait, paste again. You don't need to copy a second time. Details follow.
4. You may have started the computer in "safe" mode. Preferably, these steps should be taken in “normal” mode, under the conditions in which the problem is reproduced. If the system is now in safe mode and works well enough in normal mode to run the test, restart as usual. If you can only test in safe mode, do that.
5. If you have more than one user, and the one affected by the problem is not an administrator, then please run the test twice: once while logged in as the affected user, and once as an administrator. The results may be different. The user that is created automatically on a new computer when you start it for the first time is an administrator. If you can't log in as an administrator, test as the affected user. Most personal Macs have only one user, and in that case this section doesn’t apply. Don't log in as root.
6. The script is a single long line, all of which must be selected. You can accomplish this easily by triple-clicking anywhere in the line. The whole line will highlight, though you may not see all of it in the browser window, and you can then copy it. If you try to select the line by dragging across the part you can see, you won't get all of it.
Triple-click anywhere in the line of text below on this page to select it:
PATH=/usr/bin:/bin:/usr/sbin:/sbin:/usr/libexec;clear;cd;p=(Software Hardware Memory Diagnostics Power FireWire Thunderbolt USB Fonts 51 4 1000 25 5120 KiB/s 1024 85 \\b%% 20480 1 MB/s 25000 ports ' \*AutoCad \*dropbox \*GoogleDr\* vidinst\* ' DYLD_INSERT_LIBRARIES\ DYLD_LIBRARY_PATH -86 ` route -n get default|awk '/e:/{print $2}' ` 25 N\\/A down up 102400 25600 recvfrom sendto CFBundleIdentifier 25 25 25 1000 MB com.apple.AirPortBaseStationAgent 464843899 );N5=${#p[@]};p[N5]=` networksetup -listnetworkserviceorder|awk ' NR>1 { sub(/^\([0-9]+\) /,"");n=$0;getline;} $NF=="'${p[26]}')" { sub(/.$/,"",$NF);print n;exit;} ' `;f=('\n%s: %s\n' '\n%s\n\n%s\n' '\nRAM details\n%s\n' %s\ %s '%s\n-\t%s\n' );S0() { echo ' { q=$NF+0;$NF="";u=$(NF-1);$(NF-1)="";gsub(/^ +| +$/,"");if(q>='${p[$1]}') printf("%s (UID %s) is using %s '${p[$2]}'",$0,u,q);} ';};s=(' /^ *$|CSConfigDot/d;s/^ */ /;s/[-0-9A-Fa-f]{22,}/UUID/g;s/(ochat)\.[^.]+(\..+)/\1\2/;/Shared/!s/\/Users\/[^/]+/~/g ' ' s/^ +//;5p;6p;8p;12p;' ' {sub(/^ +/,"")};NR==6;NR==13&&$2<'${p[10]} ' 1s/://;3,6d;/[my].+:/d;s/^ {4}//;H;${ g;s/\n$//;/s: [^EO]|x([^08]|02[^F]|8[^0])/p;} ' ' 5h;6{ H;g;/P/!p;} ' ' ($1~/^Cy/&&$3>'${p[11]}')||($1~/^Cond/&&$2!~/^N/) ' ' /:$/{ N;/:.+:/d;s/ *://;b0'$'\n'' };/^ *(V.+ [0N]|Man).+ /{ s/ 0x.... //;s/[()]//g;s/(.+: )(.+)/ (\2)/;H;};$b0'$'\n'' d;:0'$'\n'' x;s/\n\n//;/Apple[ ,]|Intel|SMSC/d;s/\n.*//;/\)$/p;' ' s/^.*C/C/;H;${ g;/No th|pms/!p;} ' '/= [^GO]/p' '{$1=""};1' ' /Of/!{ s/^.+is |\.//g;p;} ' ' $0&&!/ / { n++;print;} END { if(n<200) print "com.apple.";} ' ' $3~/[0-9]:[0-9]{2}$/ { gsub(/:[0-9:a-f]{14}/,"");} { print|"tail -n'${p[12]}'";} ' ' NR==2&&$4<='${p[13]}' { print $4;} ' ' END { $2/=256;if($2>='${p[15]}') print int($2) } ' ' NR!=13{next};{sub(/[+-]$/,"",$NF)};'"`S0 21 22`" 'NR!=2{next}'"`S0 37 17`" ' NR!=5||$8!~/[RW]/{next};{ $(NF-1)=$1;$NF=int($NF/10000000);for(i=1;i<=3;i++){$i="";$(NF-1-i)="";};};'"`S0 19 20`" 's:^:/:p' '/\.kext\/(Contents\/)?Info\.plist$/p' 's/^.{52}(.+) <.+/\1/p' ' /Launch[AD].+\.plist$/ { n++;print;} END { print "'${p[41]}'";if(n<200) print "/System/";} ' '/\.xpc\/(Contents\/)?Info\.plist$/p' ' NR>1&&!/0x|\.[0-9]+$|com\.apple\.launchctl\.(Aqua|Background|System)$|'${p[41]}'/ { print $3;} ' ' /\.(framew|lproj)|\):/d;/plist:|:.+(Mach|scrip)/s/:[^:]+//p ' '/root/p' ' !/\/Contents\/.+\/Contents|Applic|Autom|Frameworks/&&/Lib.+\/Info.plist$/ { n++;print;} END { if(n<1000) print "/System/";} ' '/^\/usr\/lib\/.+dylib$/p' ' /Temp|emac/ { next;} /(etc|Preferences|Launch[AD].+)\// { sub(".(/private)?","");n++;print;} END { print "'${p[41]}'.plist\t'${p[42]}'";if(n<500) print "Launch";} ' ' /\/(Contents\/.+\/Contents|Frameworks)\/|\.wdgt\/.+\.([bw]|plu)/d;p;' 's/\/(Contents\/)?Info.plist$//;p' ' { gsub("^| |\n","\\|\\|kMDItem'${p[35]}'=");sub("^...."," ") };1 ' p '{print $3"\t"$1}' 's/\'$'\t''.+//p' 's/1/On/p' '/Prox.+: [^0]/p' '$2>'${p[9]}'{$2=$2-1;print}' ' BEGIN { i="'${p[26]}'";M1='${p[16]}';M2='${p[18]}';M3='${p[31]}';M4='${p[32]}';} !/^A/ { next;} /%/ { getline;if($5<M1) a="user "$2"%, system "$4"%";} /disk0/&&$4>M2 { b=$3" ops/s, "$4" blocks/s";} $2==i { if(c) { d=$3+$4+$5+$6;next;};if($4>M3||$6>M4) c=int($4/1024)" in, "int($6/1024)" out";} END { if(a) print "CPU: "a;if(b) print "I/O: "b;if(c) print "Net: "c" (KiB/s)";if(d) print "Net errors: "d" packets/s";} ' ' /r\[0\] /&&$NF!~/^1(0|72\.(1[6-9]|2[0-9]|3[0-1])|92\.168)\./ { print $NF;exit;} ' ' !/^T/ { printf "(static)";exit;} ' '/apsd|OpenD/!s/:.+//p' ' (/k:/&&$3!~/(255\.){3}0/ )||(/v6:/&&$2!~/A/ ) ' ' $1~"lR"&&$2<='${p[25]}';$1~"li"&&$3!~"wpa2";' ' BEGIN { FS=":";} { n=split($3,a,".");sub(/_2[01].+/,"",$3);print $2" "$3" "a[n]" "$1;b=b$1;} END { if(b) print("\n\t* Code injection");} ' ' NR!=4{next} {$NF/=10240} '"`S0 27 14`" ' END { if($3~/[0-9]/)print$3;} ' ' BEGIN { L='${p[36]}';} !/^[[:space:]]*(#.*)?$/ { l++;if(l<=L) f=f"\n "$0;} END { F=FILENAME;if(!F) exit;if(!f) f="\n [N/A]";"file -b "F|getline T;if(T!~/^(AS.+ (En.+ )?text$|POSIX sh.+ text ex)/) F=F" ("T")";printf("\nContents of %s\n%s\n",F,f);if(l>L) printf("\n ...and %s more line(s)\n",l-L);} ' ' /^ +[NP].+ =/h;/^( +D.+[{]|[}])/{ g;s/.+= //p;};' ' /^ +B/{ s/.+= |(-[0-9]+)?\.s.+//g;p;} ' ' END{print NR} ' ' /id: N|te: Y/{i++} END{print i} ' ' / / { print "'"${p[28]}"'";exit;};1;' '/ en/!s/\.//p' ' NR!=13{next};{sub(/[+-M]$/,"",$NF)};'"`S0 39 40`" ' $10~/\(L/&&$9!~"localhost" { sub(/.+:/,"",$9);print $1": "$9;} ' '/^ +r/s/.+"(.+)".+/\1/p' 's/(.+\.wdgt)\/(Contents\/)?Info\.plist$/\1/p' 's/^.+\/(.+)\.wdgt$/\1/p' 's/0/Off/p' );c1=(system_profiler pmset\ -g nvram fdesetup find syslog df vm_stat sar ps sudo\ crontab sudo\ iotop top pkgutil PlistBuddy whoami cksum kextstat launchctl sudo\ launchctl crontab 'sudo defaults read' stat lsbom mdfind ' for i in ${p[24]};do ${c1[18]} ${c2[27]} $i;done;' defaults\ read scutil sudo\ dtrace sudo\ profiles sed\ -En awk /S*/*/P*/*/*/C*/*/airport networksetup mdutil sudo\ lsof test );c2=(com.apple.loginwindow\ LoginHook '-c Print /L*/P*/loginw*' '-c Print L*/P*/*loginit*' '-c Print L*/Saf*/*/E*.plist' '~ $TMPDIR.. \( -flags +sappnd,schg,uappnd,uchg -o ! -user $UID -o ! -perm -600 \)' '.??* -path .Trash -prune -o -type d -name *.app -print -prune' '-c Print\ :'${p[35]}' 2>&1' '-c Print\ :Label 2>&1' '{/,}L*/{Con,Pref}* -type f ! -size 0 -name *.plist -exec plutil -s {} \;' "-f'%N: %l' Desktop L*/Keyc*" therm sysload boot-args status " -F '\$Time \$Message' -k Sender kernel -k Message Req 'bad |Beac|caug|dead[^bl]|FAIL|fail|GPU |hfs: Ru|inval|jnl:|last value [1-9]|n Cause: -|NVDA\(|pagin|proc: t|Roamed|rror|ssert|Thrott|tim(ed? ?|ing )o|WARN' -k Message Rne 'Goog|ksadm|SMC:' -o -k Sender fseventsd -k Message Req 'SL' " '-du -n DEV -n EDEV 1 10' 'acrx -o comm,ruid,%cpu' '-t1 10 1' '-f -pfc /var/db/r*/com.apple.*.{BS,Bas,Es,J,OSXU,Rem,up}*.bom' '{/,}L*/Lo*/Diag* -type f -regex .\*[cgh] ! -name *ag \( -exec grep -lq "^Thread c" {} \; -exec printf \* \; -o -true \) -execdir stat -f:%Sc:%N -t%F {} \;|sort -t: -k2 |tail -n'${p[38]} '-L {/{S*/,},}L*/Lau* -type f' '-L /{S*/,}L*/StartupItems -type f -exec file {} +' '-L /S*/L*/{C*/Sec*A,E}* {/,}L*/{A*d,Ca*/*/Ex,Compon,Ex,In,iTu,Keyb,Mail/B,P*P,Qu*T,Scripti,Sec,Servi,Spo,Widg}* -type f -name Info.plist' '/usr/lib -type f -name *.dylib' `awk "${s[31]}"<<<${p[23]}` "/e*/{auto,{cron,fs}tab,hosts,{[lp],sy}*.conf,pam.d/*,ssh{,d}_config,*.local} {,/usr/local}/etc/periodic/*/* /L*/P*{,/*}/com.a*.{Bo,sec*.ap}*t /S*/L*/Lau*/*t .launchd.conf" list getenv /Library/Preferences/com.apple.alf\ globalstate --proxy '-n get default' -I --dns -getdnsservers\ "${p[N5]}" -getinfo\ "${p[N5]}" -P -m\ / '' -n1 '-R -l1 -n1 -o prt -stats command,uid,prt' '--regexp --only-files --files com.apple.pkg.*|sort|uniq' -kl -l -s\ / '-R -l1 -n1 -o mem -stats command,uid,mem' -i4TCP:0-1023 com.apple.dashboard\ layer-gadgets '-d /L*/Mana*/$USER&&echo On' '-app Safari WebKitDNSPrefetchingEnabled' );N1=${#c2[@]};for j in {0..8};do c2[N1+j]=SP${p[j]}DataType;done;N2=${#c2[@]};for j in 0 1;do c2[N2+j]="-n ' syscall::'${p[33+j]}':return { @out[execname,uid]=sum(arg0) } tick-10sec { trunc(@out,1);exit(0);} '";done;l=(Restricted\ files Hidden\ apps 'Elapsed time (s)' POST Battery Safari\ extensions Bad\ plists 'High file counts' User Heat System\ load boot\ args FileVault Diagnostic\ reports Log 'Free space (MiB)' 'Swap (MiB)' Activity 'CPU per process' Login\ hook 'I/O per process' Mach\ ports kexts Daemons Agents launchd Startup\ items Admin\ access Root\ access Bundles dylibs Apps Font\ issues Inserted\ dylibs Firewall Proxies DNS TCP/IP Wi-Fi Profiles Root\ crontab User\ crontab 'Global login items' 'User login items' Spotlight Memory Listeners Widgets Parental\ Controls Prefetching );N3=${#l[@]};for i in 0 1 2;do l[N3+i]=${p[5+i]};done;N4=${#l[@]};for j in 0 1;do l[N4+j]="Current ${p[29+j]}stream data";done;A0() { id -G|grep -qw 80;v[1]=$?;((v[1]==0))&&sudo true;v[2]=$?;v[3]=`date +%s`;clear >&-;date '+Start time: %T %D%n';};for i in 0 1;do eval ' A'$((1+i))'() { v=` eval "${c1[$1]} ${c2[$2]}"|'${c1[30+i]}' "${s[$3]}" `;[[ "$v" ]];};A'$((3+i))'() { v=` while read i;do [[ "$i" ]]&&eval "${c1[$1]} ${c2[$2]}" \"$i\"|'${c1[30+i]}' "${s[$3]}";done<<<"${v[$4]}" `;[[ "$v" ]];};A'$((5+i))'() { v=` while read i;do '${c1[30+i]}' "${s[$1]}" "$i";done<<<"${v[$2]}" `;[[ "$v" ]];};';done;A7(){ v=$((`date +%s`-v[3]));};B2(){ v[$1]="$v";};for i in 0 1;do eval ' B'$i'() { v=;((v['$((i+1))']==0))||{ v=No;false;};};B'$((3+i))'() { v[$2]=`'${c1[30+i]}' "${s[$3]}"<<<"${v[$1]}"`;} ';done;B5(){ v[$1]="${v[$1]}"$'\n'"${v[$2]}";};B6() { v=` paste -d: <(printf "${v[$1]}") <(printf "${v[$2]}")|awk -F: ' {printf("'"${f[$3]}"'",$1,$2)} ' `;};B7(){ v=`grep -Fv "${v[$1]}"<<<"$v"`;};C0(){ [[ "$v" ]]&&echo "$v";};C1() { [[ "$v" ]]&&printf "${f[$1]}" "${l[$2]}" "$v";};C2() { v=`echo $v`;[[ "$v" != 0 ]]&&C1 0 $1;};C3() { v=`sed -E "$s"<<<"$v"`&&C1 1 $1;};for i in 1 2;do for j in 2 3;do eval D$i$j'(){ A'$i' $1 $2 $3; C'$j' $4;};';done;done;{ A0;A2 0 $((N1+1)) 2;C0;A1 0 $N1 1;C0;B0;C2 27;B0&&! B1&&C2 28;D12 15 37 25 8;A1 0 $((N1+2)) 3;C0;D13 0 $((N1+3)) 4 3;D23 0 $((N1+4)) 5 4;for i in 0 1 2;do D13 0 $((N1+5+i)) 6 $((N3+i));done;D13 1 10 7 9;D13 1 11 8 10;D22 2 12 9 11;D12 3 13 10 12;D23 4 19 44 13;D23 5 14 12 14;D22 6 36 13 15;D22 7 37 14 16;D23 8 15 38 17;D22 9 16 16 18;B1&&{ D22 11 17 17 20;for i in 0 1;do D22 28 $((N2+i)) 45 $((N4+i));done;};D22 12 44 54 45;D22 12 39 15 21;A1 13 40 18;B2 4;B3 4 0 19;A3 14 6 32 0;B4 0 5 11;A1 17 41 20;B7 5;C3 22;B4 4 6 21;A3 14 7 32 6;B4 0 7 11;B3 4 0 22;A3 14 6 32 0;B4 0 8 11;B5 7 8;B1&&{ A2 19 26 23;B7 7;C3 23;};A2 18 26 23;B7 7;C3 24;A2 4 20 21;B7 6;B2 9;A4 14 7 52 9;B2 10;B6 9 10 4;C3 25;D13 4 21 24 26;B4 4 12 26;B3 4 13 27;A1 4 22 29;B7 12;B2 14;A4 14 6 52 14;B2 15;B6 14 15 4;B3 0 0 30;C3 29;A1 4 23 27;B7 13;C3 30;D13 24 24 32 31;D13 25 37 32 33;A2 23 18 28;B2 16;A2 16 25 33;B7 16;B3 0 0 34;B2 21;A6 47 21&&C0;B1&&{ D13 21 0 32 19;D13 10 42 32 40;D22 29 35 46 39;};D13 14 1 48 42;D12 34 43 53 44;D22 0 $((N1+8)) 51 32;D13 4 8 41 6;D12 26 28 35 34;D13 27 29 36 35;A2 27 32 39&&{ B2 19;A2 33 33 40;B2 20;B6 19 20 3;};C2 36;D23 33 34 42 37;B1&&D23 35 45 55 46;D23 32 31 43 38;D12 36 47 32 48;D13 20 42 32 41;D13 14 2 48 43;D13 4 5 32 1;D22 4 4 50 0;D13 14 3 49 5;D12 26 48 59 49;B3 4 22 57;A1 26 46 56;B7 22;B3 0 0 58;C3 47;D23 22 9 37 7;A7;C2 2;} 2>/dev/null|pbcopy;exit 2>&-
Copy the selected text to the Clipboard by pressing the key combination command-C.
7. Launch the built-in Terminal application in any of the following ways:
Enter the first few letters of its name into a Spotlight search. Select it in the results (it should be at the top.)
In the Finder, select Go ▹ Utilities from the menu bar, or press the key combination shift-command-U. The application is in the folder that opens.
Open LaunchPad. Click Utilities, then Terminal in the icon grid.
Click anywhere in the Terminal window and paste by pressing command-V. The text you pasted should vanish immediately. If it doesn't, press the return key.
8. If you see an error message in the Terminal window such as "syntax error," enter
exec bash
and press return. Then paste the script again.
9. If you're logged in as an administrator, you'll be prompted for your login password. Nothing will be displayed when you type it. You will not see the usual dots in place of typed characters. Make sure caps lock is off. Type carefully and then press return. You may get a one-time warning to be careful. If you make three failed attempts to enter the password, the test will run anyway, but it will produce less information. In most cases, the difference is not important. If you don't know the password, or if you prefer not to enter it, press the key combination control-C or just press return three times at the password prompt. Again, the script will still run.
If you're not logged in as an administrator, you won't be prompted for a password. The test will still run. It just won't do anything that requires administrator privileges.
10. The test may take a few minutes to run, depending on how many files you have and the speed of the computer. A computer that's abnormally slow may take longer to run the test. While it's running, there will be nothing in the Terminal window and no indication of progress. Wait for the line
[Process completed]
to appear. If you don't see it within half an hour or so, the test probably won't complete in a reasonable time. In that case, close the Terminal window and report the results. No harm will be done.
11. When the test is complete, quit Terminal. The results will have been copied to the Clipboard automatically. They are not shown in the Terminal window. Please don't copy anything from there. All you have to do is start a reply to this comment and then paste by pressing command-V again.
At the top of the results, there will be a line that begins with the words "Start Time." If you don't see that, but instead see a mass of gibberish, you didn't wait for the "Process completed" message to appear in the Terminal window. Please wait for it and try again.
If any private information, such as your name or email address, appears in the results, anonymize it before posting. Usually that won't be necessary.
12. When you post the results, you might see the message, "You have included content in your post that is not permitted." It means that the forum software has misidentified something in the post as a violation of the rules. If that happens, please post the test results on Pastebin, then post a link here to the page you created.
Note: This is a public forum, and others may give you advice based on the results of the test. They speak only for themselves, and I don't necessarily agree with them.
Copyright © 2014 by Linc Davis. As the sole author of this work, I reserve all rights to it except as provided in the Use Agreement for the Apple Support Communities website ("ASC"). Readers of ASC may copy it for their own personal use. Neither the whole nor any part may be redistributed. -
Problem with Oracle.Data.Access
Hi everybody,
this is my problem, I've developed a web application witch .net 2005 (c#) and oracle client 10.
Now I need to compile all my application with oracle client 9, then I have removed client 10 and installed client 9.
But this is the problem, in References of my project I can't find Oracle.DataAccess.dll ! then I can't compile my project!
In previous installation (with client 10) the dll was located here
C:\oracle\product\10.2.0\client_1\bin\
the direcotry installation of client 9 is the same but I can't find it on my pc...
How can I switch to client 9 from client 10 without rewrite all code??
thank so much!!!!
SergioOk now I have the following situation...
I've downloaded and installed this version ODAC92070.exe and I can find the file
C:\oracle\ora92\bin\Oracle.DataAccess.dll ...
In my reverence in visual studio2005 I delete the old file and I load the new, but qhen I try to compile this error appears
'Oracle.DataAccess.Client.OracleDataReader' does not contain a definition for 'HasRows'
why??
this method is not supported in oracle client 9? -
Security problem with Google Recaptcha plugin
Hi all,
Found a security problem with Google Recaptcha plugin. If I delete the tag containing the recaptch(on some page) with Firebug, I can authorize myself without validating with Recaptcha. If someone knows how to fix this problem, I'll be be very thankful.
Thanks in advance,
Regards IvanHi Ivan,
you can secure it by adding an "Item specified is NOT NULL" validation to your page.
Will update the documentation and try to add a permanent fix in a new version of the plug-in.
Thanks for letting us know!
Patrick
My Blog: http://www.inside-oracle-apex.com
APEX 4.0 Plug-Ins: http://apex.oracle.com/plugins
Twitter: http://www.twitter.com/patrickwolf -
Problem with oracle.jbo.domain.Date
Hi there,
I've a problem with oracle.jbo.domain.Date,
I'm doing this code (this part of code is used in my Session Attribute Listener):
* This method is used to add the session id in the database, whenever user login
public void attributeAdded(HttpSessionBindingEvent hsbe){
if(!hsbe.getName().equals("user")){
return;
AmLogin am = (AmLogin)Configuration.createRootApplicationModule(
"com.ahm.pdt001.am.AmLogin",
"AmLoginLocal");
try{
hsbe.getSession().setAttribute("login", new Date(new Timestamp(
System.currentTimeMillis())));
am.createLogin(hsbe.getValue().toString(), hsbe.getSession().
getAttribute("login").toString());
} catch(Exception e){
e.printStackTrace();
System.out.println("Error insert data user: " + hsbe.getValue());
} finally{
Configuration.releaseRootApplicationModule(am, true);
Everything is running well in Jdev 10.1.3 (I'm using ADF Faces technology), and I'm trying to deploy it on OC4J 10.1.2 and it works. But it raised an error when this part of code is runned.
--------------caused and error------------------------
hsbe.getSession().setAttribute("login", new Date(new Timestamp(
System.currentTimeMillis())));
And this is an error:
javax.faces.FacesException: #{pdt001.loginAction}: javax.faces.el.EvaluationException: java.lang.NoSuchMethodError: oracle.jbo.domain.Date.<init>(Ljava/sql/Timestamp;)V at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:78) at oracle.adf.view.faces.component.UIXCommand.broadcast(UIXCommand.java:211) at javax.faces.component.UIViewRoot.broadcastEvents(UIViewRoot.java:267) at javax.faces.component.UIViewRoot.processApplication(UIViewRoot.java:381) at com.sun.faces.lifecycle.InvokeApplicationPhase.execute(InvokeApplicationPhase.java:75) at com.sun.faces.lifecycle.LifecycleImpl.phase(LifecycleImpl.java:200) at com.sun.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:90) at javax.faces.webapp.FacesServlet.service(FacesServlet.java:197) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65) at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:332) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._invokeDoFilter(AdfFacesFilterImpl.java:367) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl._doFilterImpl(AdfFacesFilterImpl.java:336) at oracle.adfinternal.view.faces.webapp.AdfFacesFilterImpl.doFilter(AdfFacesFilterImpl.java:196) at oracle.adf.view.faces.webapp.AdfFacesFilter.doFilter(AdfFacesFilter.java:87) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20) at com.ahm.filter.AhmFilterSession.doFilter(AhmFilterSession.java:45) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:645) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:322) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:270) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:112) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:186) at java.lang.Thread.run(Thread.java:534)Caused by: javax.faces.el.EvaluationException: java.lang.NoSuchMethodError: oracle.jbo.domain.Date.<init>(Ljava/sql/Timestamp;)V at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:130) at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:72) ... 23 moreCaused by: java.lang.NoSuchMethodError: oracle.jbo.domain.Date.<init>(Ljava/sql/Timestamp;)V at com.ahm.pdt001.listener.Pdt001AttributeSessionListener.attributeAdded(Pdt001AttributeSessionListener.java:27) at com.evermind[Oracle Application Server Containers for J2EE 10g (10.1.2.0.0)].server.http.EvermindHttpSession.setAttribute(EvermindHttpSession.java:128) at com.ahm.pdt001.bean.Pdt001Bean.loginAction(Pdt001Bean.java:61) 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:324) at com.sun.faces.el.MethodBindingImpl.invoke(MethodBindingImpl.java:126)
Does anybody have the same problem like this? I've used the same method in my previous project to create oracle.jbo.domain.Date with current time using java.sql.Timestamp, but I don't know why this error happened.
Thx,
AndreRe: oracle jbo.domain.Date issues in 10.1.3
Sascha -
Please Help: A Problem With Oracle-Provided 'Working' Example
A Problem With Oracle-Provided 'Working' Example Using htp.formcheckbox
I followed the simple steps in the Oracle-provided example:
Doc ID: Note:116534.1
Subject: How to use checkbox in webdb for bulk update using webdb report
However, when I select a checkbox and click on the Update button, I get a "ORA-01036: illegal variable name/number" error. Please advise. This was a very promising feature.
Fred
Below are step-by-step instructions provided by Oracle to create this "working" example:
How to use a checkbox in WEBDB 2.2 report for bulk update.
PURPOSE
This article shows how checkbox can used placed on WEBDB report
and how to use it.
SCOPE & APPLICATION
The following example to guide through the steps to create a working
example of this.
In this example, the checkbox is used to select the records. On clicking
the update button, the pl/sql procedure is called which will update col1 to
the string 'OK'.
After the update is done, the PL/SQL procedure calls the report again.
Since the report only select records where col1 is null, the updated
records will not be displayed when the report is called again.
Step 1 - Create Table
From Sqlplus, log in as scott/tiger and execute the following:
drop table chkbox_example;
create table chkbox_example
(id varchar2(10) not null,
comments varchar2(20),
col1 varchar2(10));
Step 2 - Insert Test Data
From Sqlplus, still logged in as scott/tiger , execute the following:
declare
l_i number;
begin
for l_i in 1..50 loop
insert into chkbox_example values (l_i, 'Comments ' || l_i , NULL);
end loop;
commit;
end;
Step 3 -Create SQL Query based WEBDB report
Logon to a WEBDB site which has access to the database the above tables are created.
Create a SQL based Report.
Name the report :RPT_CHKBOX
The select statement for the report is :
select c.id, c.comments, c.col1,
htf.formcheckbox('p_qty',c.id) Tick
from SCOTT.chkbox_example c
where c.col1 is null
In Advanced PL/SQL, (REPORT, Before displaying the form), put the following code
htp.formOpen('scott.chkbox_process');
htp.formsubmit('p_request','Update');
htp.br;
htp.br;
Step 4 - Create a stored procedure in the database
Log on to the database as scott/tiger and execute the following to create the
procedure.
Note: Replace WEBDB to the appropriate webdb user for your installation.
In my database, I had installed webdb using WEBDB username, hence user webdb owns
the packages.
create or replace procedure chkbox_process
( p_request in varchar2 default null,
p_qty in wwv_utl_api_types.vc_arr ,
p_arg_names in wwv_utl_api_types.vc_arr ,
p_arg_values in wwv_utl_api_types.vc_arr
is
i number;
begin
for i in 1..p_qty.count loop
if p_qty(i) is not null then
begin
update chkbox_example
set col1 = 'OK'
where chkbox_example.id = p_qty(i);
end;
end if;
end loop;
commit;
/* To Call Report again after updating */
SCOTT.RPT_CHKBOX.show
(p_request=>'Run Report',
p_arg_names=>webdb.wwv_standard_util.string_to_table2(' '),
p_arg_values=>webdb.wwv_standard_util.string_to_table2(' '));
end;
Summary
There are essentially 2 main modules, The WEBDB report and the pl/sql procedure (chkbox_process)
A button is created via the advanced pl/sql coding which shows on top of the report. (The
button cannot be placed at the bottom of the report due to the way WEBDB creates the procedure
internally)
When any button is clicked on the report, it calls the pl/sql procedure chkbox_process.
The procedure is called , WEBDB always passes the parameters p_request,p_arg_names and o_arg_values.
p_qty is another parameter that we are passing additionally, This comes from the checkbox created
using the htf.formcheckbox in the report select statement.
The pl/sql procedure calls the report again after processing. This is done to
show how to call the report.
Restrictions:
-The Next and Prev buttons on the report will not work.
So it is important that the report can fit in 1 page only.
(This may mean that you will not select(not ticked) 'Paginate' under
'Display Option' in the WEBDB report. If you do this,
then in Step 4, remove p_arg_names and p_arg_values as input parameters
to the chkbox_process)If your not so sure you can use the instanceof
insurance,
Object o = evt.getSource();
if (o instanceof Button) {
Button source = (Button) o;
I haven't thoroughly read the thread, but I use something like this:if (evt.getSource() == someObjRef) {
// do that voodoo
]I haven't looked into why you'd be creating a new reference... -
Logon problem with oracle management server
I have problem with Oracle Management Server when I connect to the OMS message comes
The exception (java.lang.NullPointerException) occurred.
if any body have any idea pls tell usHi,
Oracle has changed the Enterprise Manager from version 1.5 to 2.0 .
With the new Oracle8i dataase server another service has been added.
If you want to user the OEM you have to install The Managment Server.
The Managment server has its own user and privileges and is recommended when using OEM.
Maybe you are looking for
-
End of file in Win, Linux, Mac OS
Hi! I have a binary file created in C++ in Windows. Now I'd like to read the file in Linux and Mac OS with an Java app. Will there be a problem regarding the differences in specifing "end of file" in the operting systems?
-
Where is the file in exportpdf
I exported the file (pdf to be converted to Excel), clicked save, hourglass turns for moment then nothing. Where do I access my file?
-
i cant sync the phone to ios5.
-
Image dimensions not consistent (Nikon vs. Apple / Aperture)
I just realized something strange about RAW (NEF) images taken with my new Nikon D700 and copied to my Mac: according to Nikon's specifications (http://tinyurl.com/54cdn9) full FX size RAW images are supposed to be 4,256 x 2,832 pixels. My Mac howeve
-
Domain change for Win2000 servers
I have several Win2000 servers that I am setting up to send to state offices. I will be setting them up in our national office domain then they will be shipped out to the states and will reside in their state domains. I have been told by one of our O