Function calling & Caching problem..
hello all..
i hav made scenario of RFC as sender..and when i call the function module for the first time it gets executed and then from second time it doesnt and goes into short dump..
also even when the function gets called the message is not displayed in the XML processed messages and also the cache shows updated..
is ther some cache other than SXi which needs to be updated when RFC as sender, if yes wher is it and how to refresh..?
also can someone tell me wot is CPA cache..??
and wot it does.?
regards..
vishal
Check Michal's Blog
/people/michal.krawczyk2/blog/2005/05/10/xi-i-cannot-see-some-of-my-messages-in-the-sxmbmoni
Then you will be able to see what the problem is.
regards
SKM
Similar Messages
-
I do not have a problem getting in the iTunes stores. My issue is once on the site I can not use the "search". It says there is a pure virtual function call R6025. How can I solve this problem? Do I have to create a new account? Do I have to uninstall and re-install? Thanks
Thanks so much for your feedback. I really appreciate any input here.
If someone from Adobe could GUARANTEE that this problem would go away if I
purchased CS4, I would pony up the cash and do it. However, I'm skeptical
about that because I just saw someone else post a message on the forum today
who is running CS4 and getting the exact same runtime error as me.
I'll try un-installing and re-installing as Admin, and if that doesn't work,
maybe I can find a used copy of CS3.
In the meantime, I'm also wondering if a Photoshop file can carry any sort
of corrupt metadata inside it once it has errored out? Reason I ask is, I
had to port all of my old PSD files to the new computer, and I only seem to
be getting this error when I attempt to work on one of the files that
previously got the runtime error when they were sitting on my XP machine.
When I create new files from scratch on this new computer, they seem to be
working just fine (at least, for now).
If so, I would probably be smart to never open those troublesome
"errored-out" files again. -
Problem using function call in WHERE part of a Report's SQL query
I tried doing some searches on this, but couldn't find anything. I'm trying to run something similar to the following query in my report, but keep getting a "Query cannot be parsed within the Builder" error:
SELECT function1(TABLE2.ID) A
FROM TABLE1, TABLE2
WHERE TABLE1.ID = TABLE2.ID AND
TABLE1.NAME = 'BLAH' AND
TABLE2.DATE > SYSTIMESTAMP AND
(function2(TABLE2.ID) = 'YES' OR
function3(:USER_ID) = 'YES')
ORDER BY TABLE1.NAMEWhy won't this work? I can take out the 2 lines with function calls from the WHERE clause, and it works, so I'm assuming that APEX doesn't like something about my function calls. I know the functions are valid and work properly, because I tested them independently. Can anyone see what the problem is? Thanks!Here's the actual query:
SELECT BUILD_EXT_RES_LIST(EXT_FILE.ID) A
FROM EXT_FILE_RES, EXT_FILE
WHERE EXT_FILE_RES.ON_OWNER_PROFILE = 'Y' AND
EXT_FILE.OWNER_ID = :PROFILE AND
EXT_FILE.ID = EXT_FILE_RES.EXT_ID AND
(RES_SUBSCRIBER_YN(EXT_FILE.ID,:CURR_ID) = 'YES' OR
ADMINYESNO(:CURR_ID,:PROFILE) = 'YES')
ORDER BY EXT_FILE.FILE_NAMEAnd here's the actual error message:
1 error has occurred
Query cannot be parsed within the Builder. If you believe your query is syntactically correct, check the ''generic columns'' checkbox below the region source to proceed without parsing. ORA-00904: "SER_IS_ADMINYESNO": invalid identifier -
I downloaded latest update of iTunes (windows 7, 64bit) and have now the problem runtime error R6025 pure virtual function call (Microsoft Visual C runtime library) - Who would have a solution to that problem?
Thanks from Switzerland
<Edited by Host>For general advice see Troubleshooting issues with iTunes for Windows updates.
The steps in the second box are a guide to removing everything related to iTunes and then rebuilding it, which is often a good starting point unless the symptoms indicate a more specific approach. Review the other boxes and the list of support documents further down page in case one of them applies.
Your library should be unaffected by these steps but there is backup and recovery advice elsewhere in the user tip.
(I've asked the hosts to remove your email address)
tt2 -
Calling javascript function with StageWebView problems
I have a test html page I made to R&D some functionality, in my view I have a stageWebView and am calling a local html file from inside the app like this:
stageWebView.loadURL(new File(new File('app:/assets/html/reports.html?stuff=1234').nativePath).url);
I then try and call a javascript function called tester() from the html page like this: stageWebView.loadURL("javascript:tester()");
And the only thing I see in the debug console is:
ReferenceError: Can't find variable: tester
From what I have found online this is the way that this should be done. Does anyone have any ideas? I am not running this on a device yet, just in the FlashBuilder emulator.
Thanks for any pointers.Are you able to load the local html file? I have been trying to load a local file, test.html, using the web view have have not been able to get it to load at all. It always gives me a blank page using file: or app:
If you have gotten it to work could post a snippet for me to check out?
Thanks, -
Problem with cesession.jar: Incompatible object argument for function call
Hi,
I'm looking for an actual file cesession.jar because my current version from BOXI SP2 (01.03.2007 09:22, 62 KB) causes an error.
Who can help me?
Best Regards
Arnold
type Exception report
message
description The server encountered an internal error () that prevented it from fulfilling this request.
exception
org.apache.jasper.JasperException: (class: com/crystaldecisions/sdk/framework/internal/d, method: a signature: ()V) Incompatible object argument for function call
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:460)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:355)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
javax.servlet.ServletException: (class: com/crystaldecisions/sdk/framework/internal/d, method: a signature: ()V) Incompatible object argument for function call
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:841)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:774)
org.apache.jsp.TutorialDesktop.start_jsp._jspService(start_jsp.java:151)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
root cause
java.lang.VerifyError: (class: com/crystaldecisions/sdk/framework/internal/d, method: a signature: ()V) Incompatible object argument for function call
com.crystaldecisions.sdk.framework.internal.CEFactory.makeSessionMgr(Unknown Source)
com.crystaldecisions.sdk.framework.CrystalEnterprise.getSessionMgr(Unknown Source)
org.apache.jsp.TutorialDesktop.start_jsp.createAuthenticationList(start_jsp.java:26)
org.apache.jsp.TutorialDesktop.start_jsp._jspService(start_jsp.java:132)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/5.5.26 logs.Hello Arnold,
Can you provide us the exact information about the implementation version and Ant-version of the cesession.jar file that you are using.
This could be observed by opening the jar file using winrar or winzip, then go to the MANIFEST.MF file present inside META-INF folder.
Once you will open the MANIFEST.MF file, please let us know the first seven lines present inside the same fle.
Thanks,
Chinmay -
Function Call problem {Urgent Please}
Dear All,
I am calling a function (which is in PLSQL library) from a procedure in which is alos in same PLSQL library, and calling this procedure from my form,
everthing in a procedure working well but this function call is not working, but when i put some Message before and after function call its woking fine for example.
in follwoing case is working
Beging
Message('start calling') ;
x := My_Function(abc) ;
Message('end calling') ;
End ;
in follwoing case its not working
Begin
x := My_Function(abc) ;
end ;
Can anyone tell me whats wrong with this ???
Thanks in Advance.
Regards,
Zahid Raj
Message was edited by:
zahidrajlooks strange to me!
I think better try recompiling the Library and then again attach to the form. -
I see there are a lot of postings on this topic, however I
haven't found any resolutions that are working for me. Here is the
situation. I have a main movie, that loads external .swfs and plays
in a linear way, much like a slide presentation. There are back and
forward buttons, that go from one slide to the next. In each
external .swf I am loading an mp3 dynamically as an event sound in
the first frame. Here's an example of the AS:
this.my_sound = new Sound();
this.my_sound.loadSound("screen2.mp3", false);
this.my_sound.onLoad = function(){
my_sound.start();
gotoAndPlay(2);
This all works fine when I upload the files, clear my cache,
and go to the URL. When I refresh the browser, it stops working.
When I use the forward or backward buttons, it also stops working.
Pretty much any time I try to revisit this external swf after it
initially plays, it won't play at all. I'm assuming this has
something to do with the cache. It's only an IE problem so far as I
can see. I don't have this problem in Firefox. I've tried giving
the mp3 a different extension. Doesn't work. I've tried moving all
the AS to the second frame. Doesn't work. Any help would be greatly
appreciated.
Thanks.inlineblue and Tracy,
Came across this post while looking for a solution for the
cache problem. I am using Flex 2.0.1.
Q1) From what I understood is adding a parameter to the
AC_FL_RunContent("src", "MainMod?version1.1",...) call in the HTML
wrapper will make sure the latest content is downloaded to the
browser. Does this mean when the next time my MainMod.mxml is
changed, I need to make this V1.2.
Q2) I only saw one occurance of AC_FL_RunContent call in my
wrapper where it is referring my SWF file. This is the only place I
need to keep changing whenever the mxml file is changed?
Q3) Looks like I have to change all Wrapper files (if I have
multiple .mxml files in my project). Is there any we can automate
this?
Do you have a sample that I could take a look at to
understand what needs to be changed to fix the issue?
Appreciate your help. -
Captivate 8 - Runtime Error R6025 - Pure Virtual Function Call
My teammates and I have Captivate 8 installed recently and while working on a big project for a client, some of our files got corrupted. We couldn't open them and we'd get a Runtime Error R6025 - Pure Virtual Function Call. Some members of the team could still open those CP8 files but eventually, everyone got the error and we couldn't open the files anymore, even if they were backed up several times.
Anyone have the same problem? We are suddenly having regrets purchasing all those Captivate 8 licenses. Captivate 6 never gave us this problem and it really had to happen with a big project for a client.Just responded to this in another thread (note we used Captivate 7 so it might be a different error).
We found that when we created files with embedded swf files that existed ABOVE widgets in the timeline, when someone else tried to open our file it broke/we got the runtime error. The original person could still open it for a time, but eventually the cache would clear and they couldn't.
However, if we ensured swf files are BELOW widgets in the source files, it didn't break. In fact, if we found one that was breaking and got the author to move the swf file on the timeline, it would start working for others.
STRANGE! Let me know if this works for you to! -
I'm building am application in Flash Actionscript 3 with PHP5 mySQL and xml
To make it short
The user logins in, if the username and password are correct flash calls the data php script and loads
a datagrid with a dynamically created XML file with the users info according to 2 conditions the username and one field in the database
(field is checkbox) if checkbox is set to "notchecked".
Then if you click on a cell in the datagrid it shows all to info details for that cell, user then has a option to
click the checkbox and delete the info if it not needed anymore. This calls the a php script to change checkbox field
to checked, flash then calls the data php script to reload the datagrid with a new xml file.
This works fine in Firefox, Safari and Chrome you can delete any amount of info. IE has a problem if you click on a cell and delete the info
the datagrid is reloaded correctly the first time, but if the user goes back to delete another cell of info, IE recalls the old data(old XML)
So I assume that IE is using a Cache, (why would any broswer cache a dynamicly created file Ill never understand)
I have tryed to use every version of
header("Cache-Control: no-cache");
header("Expires: -1");
that I know of, have put it in the php data script and in the page , have even gone as far as putting the cache-control into the xml file itself
but IE caches the xml
I also have put a Identifier in the actionscript to call, when the new xml is called--
var myIdentifier:Number;
myIdentifier=Math.round(Math.random()*10000);
var newData:URLRequest = new URLRequest("http://localhost/newData.xml?uniq="+myIdentifier);
hoping that IE would realize that its a new file but IE just loads the old data.
I am testing on IE7
so my question is how can I get IE to stop caching the xml file???
Any help would be appreciated.myIdentifier is called when the app loads, when the finishedgoalbuttonListener(event:MouseEvent) is called it calls the function IDXML and changes myIdentifier number, and calls finishedgoal(goalID,user), this sends the vars to the php script, on COMPLETE finishedgoalSuccessful is called.If the var status is "sent " timeMain () is called, after the timer plays out, loadXML (datauser) is called with makes a request to call the getData.php script.
on COMPLETE loadDataXML is called to reload the xml files.
The way Im looking at this, the myIdentifier has been changed long before the xml reloads but but the newData.url never gets the new info about myIdentifier changing ? Thats were Im lost.
var myIdentifier:Number;
var myIdentifier2:Number;
function IDXML (){
trace("IDXML FUNCTION CALLED");
myIdentifier = Math.round(Math.random() * 10000 );
myIdentifier2 = Math.round(Math.random() * 10000 );
IDXML ()
function finishedgoalbuttonListener (event:MouseEvent):void {
finishedgoal (ids.text,userinput.usernew.text );
IDXML ()
trace("IDXML CALLED AGAIN")
function finishedgoal (goalID,user) {
if (goalID != "" && user != "");
finishedgoalVars.user = user;
finishedgoalVars.goalID = goalID;
//telling the loginURL it wants to use the post method of sending vars
finishedgoalURL.method = URLRequestMethod.POST;
//attaching vars to to the addURL
finishedgoalURL.data = finishedgoalVars;
//loading the url
finishedgoalLoader.load (finishedgoalURL);
finishedgoalLoader.addEventListener (Event.COMPLETE,finishedgoalSuccessful);
else {
//addingCon.adding.adderror.text = "One of the text fields are empty";
function finishedgoalSuccessful (event:Event):void {
finishedgoalLoader.removeEventListener (Event.COMPLETE,finishedgoalSuccessful);
var finishedgoalVars:URLVariables = new URLVariables(finishedgoalLoader.data);
switch (finishedgoalVars.goalStatus) {
case 'sent' :
trace(newData.url);
goaldetailsCon.goaldetails.cbox.selected = false;
this.goaldetailsCon.goaldetails.SFG.visible = false;
this.goaldetailsCon.goaldetails.backDetails.visible = true;
trace ("datauser :"+datauser);
timeMain ();
this.goaldetailsCon.goaldetails.detailsdesc.text = "";
this.goaldetailsCon.goaldetails.detailstitle.text = "";
this.goaldetailsCon.goaldetails.finishedDetail.text = "You have finished this goal!!!! ";
trace ("successful");
break;
default :
goaldetailsCon.goaldetails.cbox.selected = false;
trace ("not successful");
function timeMain ():void {
var myTimer:Timer = new Timer(2000,1);
myTimer.addEventListener ("timer", timerHandler);
myTimer.start ();
function timerHandler (e:TimerEvent):void {
trace ("timerHandler: " + e);
MainIn ();
function Main (e:MouseEvent) {
//trace ("Main called");
loadXML (userinput.usernew.text);
function MainIn () {
//trace ("MainIn called");
trace("myIdentifier "+myIdentifier)
trace("myIdentifier2 "+myIdentifier2)
loadXML (userinput.usernew.text);
//datagrid
function loadXML (datauser) {
//trace ('loadXML called');
try {
trace ("data user var "+datauser);
dataGridVars.datauser = datauser;
//telling the loginURL it wants to use the post method of sending vars
request.method = URLRequestMethod.POST;
//attaching vars to to the addURL
request.data = dataGridVars;
//loading the url
dataGridLoader.load (request);
dataGridLoader.addEventListener (Event.COMPLETE,loadDataXML);
} catch (error:Error) {
trace ('get data php did not function.');
function loadDataXML (event:Event) {
if (dataVar == 0) {
dataGridLoader.load (request2);
dataVar = 1;
else {
dataGridLoader.load (newData);
trace(newData)
dataVar = 0;
xmlLoader.load (title_date);
xmldescLoader.load (desc);
xmlIDLoader.load (ID);
ids.restrict = "0-9";
dataGridLoader.removeEventListener (Event.COMPLETE,loadDataXML);
dataGridLoader.addEventListener (Event.COMPLETE, completeHandler);
function completeHandler (event:Event):void {
//trace ("completeHandler called");
dataGridLoader.removeEventListener (Event.COMPLETE, completeHandler);
try {
var xmlData:XML = new XML(event.target.data);
var dataXML:XML = new XML(dataGridLoader.data);
//trace ("XML File Loaded to Datagrid ");
trace (dataXML);
//trace ("ATTRIBUTE :"+dataXML.clients.@ID);
} catch (error2:Error) {
error1.text = "XML file does not exist";
var titleCol:DataGridColumn = new DataGridColumn("title");
titleCol.headerText = "Goal Title";
titleCol.width = 200;
var descCol:DataGridColumn = new DataGridColumn("desc");
descCol.headerText = "Goal Description";
descCol.width = 220;
var dateCol:DataGridColumn = new DataGridColumn("date");
dateCol.headerText = "Goal Date";
dateCol.width = 80;
var dataDP:DataProvider = new DataProvider(dataXML);
goalviewCon.goalview.columns = [titleCol,descCol,dateCol];
goalviewCon.goalview.width = 500;
goalviewCon.goalview.horizontalScrollPolicy = ScrollPolicy.AUTO;
goalviewCon.goalview.verticalScrollPolicy = ScrollPolicy.AUTO;
goalviewCon.goalview.dataProvider = dataDP;
goalviewCon.goalview.sortableColumns = false;
goalviewCon.goalview.addEventListener (Event.CHANGE,selectedRow);
goalviewCon.goalview.addEventListener (MouseEvent.CLICK, noChange);
if (goalviewCon.goalview.length > 14) {
goalviewCon.goalview.rowCount = 14;
else {
goalviewCon.goalview.rowCount = goalviewCon.goalview.length + 1;
function noChange (e:MouseEvent):void {
trace ("noChange called");
ConAlpha = "dv";
orgMCalpha ();
removeChild (goaldetailsCon);
addChild (goaldetailsCon);
this.goaldetailsCon.goaldetails.finishedDetail.text = "";
goaldetailsCon.alpha = 0;
Tweener.addTween (goaldetailsCon, {alpha:1, time:1});
function selectedRow (e:Event):void {
//trace(dataXML.attribute("ID"));
trace ("selected Row called");
trace (goalviewCon.goalview.selectedIndex);
//trace("ATTRIBUTE :"+dataXML.clients.@ID);
goaldetailsCon.alpha = 0;
addingCon.alpha = 0;
suggCon.alpha = 0;
accountCon.alpha = 0;
helpCon.alpha = 0;
registration.alpha = 0;
goalviewCon.goalview.addEventListener (MouseEvent.CLICK,addTitleNode);
goalviewCon.goalview.addEventListener (MouseEvent.CLICK,addDescNode);
goalviewCon.goalview.addEventListener (MouseEvent.CLICK,addIDNode);
var newData:URLRequest = new URLRequest("http://site/newData.xml?uniq=" + myIdentifier);
var request2:URLRequest = new URLRequest("http://site/data.xml?uniq=" + myIdentifier2);the -
How to call a C function calling a Java Method from another C function ?
Hi everyone,
I'm just starting to learn JNI and my problem is that I don't know if it is possible to call a C function calling a Java Method (or doing anything else with JNI) from another C function.
In fact, after receiving datas in a socket made by a C function, I would like to create a class instance (and I don't know how to do it too ; ) ) and init this instance with the strings I received in the socket.
Is all that possible ?
Thank you very much for your help !Hard to understand the question, but by most interpretations the answer is going to be yes.
You do of course understand that JNI is the "API" that sits between Java and C and that every call between the two must go through that. You can't call it directly. -
Is it possible to get the caller object in a function call hierarchy ?
Hi,
I have a problem in hand for adding a new functionality to an existing code with MINIMAL code change. For this I need to get some extra information in a function call from its caller. And for this I do not want to change the signature of the method, as it requires a lot of code change. So I need to have a programming facility by which I can get the object from which the function was invoked. Some thing like "{code}this.CALLEROBJECT{code}".
Please let me know whether we can achieve this in JAVA. I wonder if such a facility exists in any programming language...
Thanks in advance.
Regards
JobyNo.
Youd have to buy it Germany or see if an Apple Authrorized reseller in Singapore could order you the keyboard. -
I am experiencing this error with one of our cluster environment. Can anyone help me in this issue.
The Cluster Service function call 'ClusterResourceControl' failed with error code '1008(An attempt was made to reference a token that does not exist.)' while verifying the file path. Verify that your failover cluster is configured properly.
Thanks,
Venu S.
Venugopal S ----------------------------------------------------------- Please click the Mark as Answer button if a post solves your problem!Hi Venu S,
Based on my research, you might encounter a known issue, please try the hotfix in this KB:
http://support.microsoft.com/kb/928385
Meanwhile since there is less information about this issue, before further investigation, please provide us the following information:
The version of Windows Server you are using
The result of SELECT @@VERSION
The scenario when you get this error
If anything is unclear, please let me know.
Regards,
Tom Li -
Java.lang.VerifyError - Incompatible object argument for function call
Hi all,
I'm developing a JSP application (powered by Tomcat 4.0.1 in JDK 1.3, in Eclipse 3.3). Among other stuff I have 3 classes interacting with an Oracle database, covering 3 use cases - renaming, adding and deleting an database object. The renaming class simply updates the database with a String variable it receives from the request object, whereas the other two classes perform some calculations with the request data and update the database accordingly.
When the adding or deleting classes are executed, by performing the appropriate actions through the web application, Tomcat throws the following:
java.lang.VerifyError: (class: action/GliederungNewAction, method: insertNewNode signature: (Loracle/jdbc/driver/OracleConnection;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)V) Incompatible object argument for function call
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at action.ActionMapping.perform(ActionMapping.java:53)
at ControllerServlet.doResponse(ControllerServlet.java:92)
at ControllerServlet.doPost(ControllerServlet.java:50)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
...The renaming works fine though. I have checked mailing lists and forums as well as contacted the company's java support but everything I have tried out so far, from exchanging the xerces.jar files found in JDOM and Tomcat to rebuidling the project didn't help.
I just can't explain to myself why this error occurs and I don't see how some additional Java code in the other 2 classes could cause it?
I realize that the Tomcat and JDK versions I'm using are totally out of date, but that's company's current standard and I can't really change that.
Here's the source code. I moved parts of the business logic from Java to Oracle recently but I left the SQL statements that the Oracle stored procedures are executing if it helps someone.
package action;
import java.sql.CallableStatement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.StringTokenizer;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import oracle.jdbc.driver.OracleConnection;
* This class enables the creation and insertion of a new catalogue node. A new node
* is always inserted as the last child of the selected parent node.
public class GliederungNewAction implements Action {
public String perform(ActionMapping mapping, HttpServletRequest request,
HttpServletResponse response) {
// fetch the necessary parameters from the JSP site
// the parent attribute is the selected attribute!
String parent_attribute = request.getParameter("attr");
String catalogue = request.getParameter("catalogue");
int parent_sequenceNr = Integer.parseInt(request.getParameter("sort_sequence"));
// connect to database
HttpSession session = request.getSession();
db.SessionConnection sessConn = (db.SessionConnection) session.getAttribute("connection");
if (sessConn != null) {
try {
sessConn.setAutoCommit(false);
OracleConnection connection = (OracleConnection)sessConn.getConnection();
int lastPosition = getLastNodePosition( getLastChildAttribute(connection, catalogue, parent_attribute) );
String newNodeAttribute = createNewNodeAttribute(parent_attribute, lastPosition);
// calculate the sequence number
int precedingSequenceNumber = getPrecedingSequenceNumber(connection, catalogue, parent_attribute);
if ( precedingSequenceNumber == -1 ) {
precedingSequenceNumber = parent_sequenceNr;
int sortSequence = precedingSequenceNumber + 1;
setSequenceNumbers(connection, catalogue, sortSequence);
// insert the new node into DB
insertNewNode(connection, catalogue, newNodeAttribute, parent_attribute, "Neuer Punkt", sortSequence);
connection.commit();
} catch(SQLException ex) {
ex.printStackTrace();
return mapping.getForward();
* Creates, fills and executes a prepared statement to insert a new entry into the specified table, representing
* a new node in the catalogue.
private void insertNewNode(OracleConnection connection, String catalogue, String attribute, String parent_attribute, String description, int sortSequence) {
try {
String callAddNode = "{ call fasi_lob.pack_gliederung.addNode(:1, :2, :3, :4, :5) }";
CallableStatement cst;
cst = connection.prepareCall(callAddNode);
cst.setString(1, catalogue);
cst.setString(2, attribute);
cst.setString(3, parent_attribute);
cst.setString(4, description);
cst.setInt(5, sortSequence);
cst.execute();
cst.close();
} catch (SQLException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
// String insertNewNode = "INSERT INTO vstd_media_cat_attributes " +
// "(catalogue, attribute, parent_attr, description, sort_sequence) VALUES(:1, :2, :3, :4, :5)";
// PreparedStatement insertStmt;
// try {
// insertStmt = connection.prepareStatement(insertNewNode);
// insertStmt.setString(1, catalogue);
// insertStmt.setString(2, attribute);
// insertStmt.setString(3, parent_attribute);
// insertStmt.setString(4, description);
// insertStmt.setInt(5, sortSequence);
// insertStmt.execute();
// insertStmt.close();
// } catch (SQLException e) {
// e.printStackTrace();
* This method returns the attribute value of the last child of the parent under which
* we want to insert a new node. The result set is sorted in descending order and only the
* first result (that is, the last child under this parent) is fetched.
* If the parent node has no children, "parent_attr.0" is returned.
* @param connection
* @param catalogue
* @param parent_attribute
* @return attribute of the last child under this parent, or "parent_attr.0" if parent has no children
private String getLastChildAttribute(OracleConnection connection, String catalogue, String parent_attribute) {
String queryLastChild = "SELECT attribute FROM vstd_media_cat_attributes " +
"WHERE catalogue=:1 AND parent_attr=:2 ORDER BY sort_sequence DESC";
String lastChildAttribute;
PreparedStatement ps;
try {
ps = connection.prepareStatement(queryLastChild);
ps.setString(1, catalogue);
ps.setString(2, parent_attribute);
ResultSet rs = ps.executeQuery();
/* If a result is returned, the selected parent already has children.
* If not set the lastChildAttribute to parent_attr.0
if (rs.next()) {
lastChildAttribute = rs.getString("attribute");
} else {
lastChildAttribute = parent_attribute.concat(".0");
rs.close();
return lastChildAttribute;
} catch (SQLException e) {
e.printStackTrace();
return null;
* This helper method determines the position of the last node in the attribute.
* i.e for 3.5.2 it returns 2, for 2.1 it returns 1 etc.
* @param attribute
* @return position of last node in this attribute
private int getLastNodePosition(String attribute) {
StringTokenizer tokenizer = new StringTokenizer(attribute, ".");
String lastNodePosition = "0";
while( tokenizer.hasMoreTokens() ) {
lastNodePosition = tokenizer.nextToken();
return Integer.parseInt(lastNodePosition);
* This method calculates the attribute of a node being inserted
* by incrementing the last child position by 1 and attaching the
* incremented position to the parent.
* @param parent_attr
* @param lastPosition
* @return attribute of the new node
private String createNewNodeAttribute(String parent_attr, int lastPosition) {
String newPosition = new Integer(lastPosition + 1).toString();
return parent_attr.concat("." + newPosition);
* This method checks if the required sequence number for a new node is already in use and
* handles the sequence numbers accordingly.
* If the sequence number for a new node is NOT IN USE, the method doesn't do anything.
* If the sequence number for a new node is IN USE, the method searches for the next free
* sequence number by incrementing the number by one and repeating the query until no result
* is found. Then all the sequence numbers between the required number (including, >= relation)
* and the nearest found free number (not including, < relation) are incremented by 1, as to
* make space for the new node.
* @param connection
* @param catalogue
* @param newNodeSequenceNumber required sequence number for the new node
private void setSequenceNumbers(OracleConnection connection, String catalogue, int newNodeSequenceNumber) {
// 1. check if the new sequence number exists - if no do nothing
// if yes - increment by one and see if exists
// repeat until free sequence number exists
// when found increment all sequence numbers freeSeqNr > seqNr >= newSeqNr
String query = "SELECT sort_sequence FROM vstd_media_cat_attributes " +
"WHERE catalogue=:1 AND sort_sequence=:2";
PreparedStatement ps;
try {
ps = connection.prepareStatement(query);
ps.setString(1, catalogue);
ps.setInt(2, newNodeSequenceNumber);
ResultSet rs = ps.executeQuery();
// if no result, the required sequence number is free - nothing to do
if( rs.next() ) {
int freeSequenceNumber = newNodeSequenceNumber;
do {
ps.setString(1, catalogue);
ps.setInt(2, freeSequenceNumber++);
rs = ps.executeQuery();
} while( rs.next() );
// increment sequence numbers - call stored procedure
String callUpdateSeqeunceNrs = "{ call fasi_lob.pack_gliederung.updateSeqNumbers(:1, :2, :3) }";
CallableStatement cst = connection.prepareCall(callUpdateSeqeunceNrs);
cst.setString(1, catalogue);
cst.setInt(2, newNodeSequenceNumber);
cst.setInt(3, freeSequenceNumber);
cst.execute();
cst.close();
// String query2 = "UPDATE vstd_media_cat_attributes " +
// "SET sort_sequence = (sort_sequence + 1 ) " +
// "WHERE catalogue=:1 sort_sequnce >=:2 AND sort_sequence <:3";
// PreparedStatement ps2;
// ps2 = connection.prepareStatement(query2);
// ps2.setString(1, catalogue);
// ps2.setInt(2, newNodeSequenceNumber);
// ps2.setInt(3, freeSequenceNumber);
// ps.executeUpdate();
// ps.close();
} // end of if block
rs.close();
} catch (SQLException e) {
e.printStackTrace();
* This method finds the last sequence number preceding the sequence number of a node
* that is going to be inserted. The preceding sequence number is required to calculate
* the sequence number of the new node.
* We perform a hierarchical query starting from the parent node: if a result is returned,
* we assign the parent's farthest descendant's node sequence number; if no result
* is returned, we assign the parent's sequence number.
* @param connection
* @param catalogue
* @param parent_attr parent attribute of the new node
* @return
private int getPrecedingSequenceNumber(OracleConnection connection, String catalogue, String parent_attr) {
int sequenceNumber = 0;
String query = "SELECT sort_sequence FROM vstd_media_cat_attributes " +
"WHERE catalogue=:1 " +
"CONNECT BY PRIOR attribute = parent_attr START WITH parent_attr=:2 " +
"ORDER BY sort_sequence DESC";
try {
PreparedStatement ps = connection.prepareStatement(query);
ps.setString(1, catalogue);
ps.setString(2, parent_attr);
ResultSet rs = ps.executeQuery();
if ( rs.next() ) {
sequenceNumber = rs.getInt("sort_sequence");
} else {
// TODO: ggf fetch from request!
sequenceNumber = -1;
rs.close();
ps.close();
} catch (SQLException e) {
e.printStackTrace();
return sequenceNumber;
}After further googling I figured out what was causing the problem: in eclipse I was referring to external libraries located in eclipse/plugins directory, whereas Tomcat was referring to the same libraries (possibly older versions) in it's common/lib directory.
-
"R6025 -pure virtual function call" Error While Use Adobe Media Encoder
I'm trying to use Adobe Media Encoder (CS3) to output a project to H.264. I have about 3 minutes of footage on the Premier Pro CS3 Timeline, all of it in Cineform AVI intermediate format. When I export the movie through AME and select 2-pass VBR, it gets through the first pass, but crashes at 50% on the second pass with the error:
"Microsoft Visual C++ Runtime Library
Runtime Error!
Program E:\Progra...
R6025
-pure virtual function call"
Any ideas what may be causing this error?Point taken...
I'm on a Dell XPS 720 Windows XP (32-bit) system, with all up-to-date service packs and patches. I have 4GB RAM installed, and Production Premium CS3, TMPGEncXPress and Cineform's Neo Scene. Neo Scene is a recent addition and the problem existed prior to its installation. I have two 7900GS graphics cards (each with 256MB video RAM), running in SLI mode.
I dual boot Windows XP: One system is "Messy" with all kinds of stuff installed. The other is "Clean" and has virtually nothing installed, except for the three suites previously mentioned. No anti-virus or anti-spyware software is installed on the Clean system. I get the error on both systems.
I saw the post from September 2007 reference vcredist_x86. I'll be trying that at my next opportunity, however, I'm not sure that will fix it, as I don't see why both systems would suffer from the same corruption. I'll also be swapping out RAM to see if that fixes the issue.
Maybe you are looking for
-
I update my Mac to version 10.9.2 and now my printer does not work anymore. I did all the software updates and I do not understand why my mac does not recognize the printer anymore?
-
File attachment in mail missing
I am using iphone to read my corporate emails. I received an email with attachment 8MB and was asked to download full message. Once I downloaded the full message, the attachment was missing and a text message (See attached file: filename.zip) was rep
-
Since JDBC is a bridge to connect Java and Oracle via ODBC. However, in Linux, there is not ODBC. Can I still use JDBC in linux to access Oracle? null
-
CLIENT_HOST the (body part) to be multi line
Dear All, Am using Oracle Developer Suite 10g "Form Builder" I am using the following Code: CLIENT_HOST('rundll32.exe url.dll, FileProtocolHandler "mailto:xx.xx@com?subject=mysubject&body=mybody"'); I need the (body part) to be multi line Example: --
-
Possible to obtain higher video quality in Theatre mode?
Hi, is it possible to somehow raised the quality when sharing (ie Keynote) in the Theatre mode? Sincerely, Andreas