Event Handler not Working
Salutations!
My College teacher was telling me about flash builder and how good it is for mobile applications. I've never done anything with actionscript before and had my first foray into such a few days ago. However I quickly ran into a problem. I've drawn a rectangle and are now wanting to try and use event handlers. For now I was wanting to say add the event handler for clicking on the rectangle. When done so then run a specifed function.
rectangle.addEventListener(MouseEvent.CLICK, RectClicked);
But even though there is nothing wrong anywhere in my application upon clicking the first rectangle, nothing happens. This is true for other mouse and keyboard events. My teacher said it may have something to do with having the student flash builder at College and currently having the trial here at home. It may not allow you to use certain functions.
Do I have to purchase flash builder first before being able to use certain functionality?
Ah... with all due respect, I think your teacher is wrong. To disable event handling would be somewhat traumatic for Flash which uses event handling as the core of its functionality. In any case, I am not aware of any functions being disabled on a trial version.
It is far more likey to be a coding error on your part, sorry. There are a number of possibilities:
1. You may have drawn a rectangle as a primitive (eg <s:Rect />) or as a Shape - both of which are IEventDispatcher but neither of which dispatch mouse events.
2. You may have added the listener at the wrong point in the timeline so that the listener isn't there when you click.
3. Some other, unspecified coding error...
I imagine the first possibility is the most likely.
Here is a simple pure actionscript clicker:
[code]
package
import flash.display.Sprite;
import flash.events.MouseEvent;
public class Clicker extends Sprite
public function Clicker()
var s:Sprite = new Sprite();
s.graphics.beginFill(0xff,1);
s.graphics.drawRect(0,0,50,50);
s.x = s.y = 50;
addChild(s);
s.addEventListener(MouseEvent.CLICK,rectClicked);
protected function rectClicked(event:MouseEvent):void {
trace("Rectangle was clicked.");
[/code]
And here is the same in Flex:
[code]
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Script>
<![CDATA[
import mx.graphics.SolidColor;
protected function group1_clickHandler(event:MouseEvent):void
trace("Rectangle was clicked.");
]]>
</fx:Script>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
<s:Group x="50" y="50" click="group1_clickHandler(event)">
<s:Rect width="50" height="50" fill="{new SolidColor(0xff,1)}" />
</s:Group>
</s:Application>
[/code]
G
Similar Messages
-
Validation Event Handler Not working with Flat File GTC Trusted Recon
We are created Event Handler for checking special characters in Telephone field.Its working fine when the user is created through Admin Console.but the event handler is not triggering while doing GTC Flat File Trusted recon.
Version: OIM 11.1.1.5.0
Can someone please help me out with this.
Thanks
Edited by: 790561 on 17-Feb-2013 09:01
Edited by: 790561 on Feb 17, 2013 9:35 PM
Edited by: 790561 on Feb 18, 2013 12:38 AMValidation Event handlers will not work with your trusted recon. You can use the GTC Validation provider, it is nothing but the plugins which you can insert with in your source field in GTC. I think you can easily get the steps for how to create a custom GTC Providers.
Edited by: iam37 on Feb 16, 2013 4:09 PM -
Validation Event Handler Not working with GTC Recon???
We have implemented a Validation Event Handler on user entity.
In the code we have implemented both the execute methods i.e. Orchestration andf Bulk Orchestration. We have created a UDF for Manager field and our validation handler checks whether the user in Manager UDF field is an Active user in OIM or not. In case the user is not an Active user, code will throw a Validation Failed Exception.
At the time of changing the Manager UDF value from the Console directly Validation Event Handler is getting triggered but with GTC Recon Validation Handler is not Working.
Previously i faced the same issue with the post process event handler but the problem get resoved when i implemented execute method with Bulk Orchestration. As per my understanding Bulk Orchestration exceute method gets called with GTC Recon and execute method with Orchestration gets called when changing the attribute value directly from the console.
In case of Validation Event Handler i have implemented both but still validation Event handler is not working with GTC.
Thanks in Advance....Any Help????
-
OnMouseClicked event handler not working
I'm currently playing with Netbeans 7.0 and JavaFX 2.0-beta (Java 1.6.0_26, OS Windows XP) and noticed, that the onMouseClicked event handler doesn't seem to work properly.
I added one to the scene but it got triggered only very sporadical, when I hit the mouse button several times really fast. The onMousePressed and onMouseReleased handlers on the other side work as expected.
I also tried adding a click event handler to other nodes like a Rectangle or a Pane but it's always the same behaviour.
Is this a (known) bug or limitation of the beta release or am I missing something here?
Here is a a short example:
public void start(Stage primaryStage) {
primaryStage.setTitle("JavaFX");
final BorderPane root = new BorderPane();
final Scene scene = new Scene(root, 800, 600, Color.BLACK);
scene.setOnMouseClicked(new EventHandler<MouseEvent>() {
public void handle(MouseEvent event) {
System.out.println("click");
primaryStage.setScene(scene);
primaryStage.centerOnScreen();
primaryStage.setVisible(true);
}Regards,
Kai
Edited by: 865264 on 11.06.2011 13:29 (thanks for the tip, Darryl)To get better help sooner, post a SSCCE (Short, Self Contained, Compilable and Executable) example that demonstrates the problem.
Don't forget to read the announcements at the top of the forum listing and the FAQ linked from every page so you'll know how to format your code correctly. -
Event Handler not found -OIM 9102
Hi Experts,
I'm facing a problem while creating a user manually in OIM. Everytime I try to manually create a user, an error message is displayed on the GUI saying, "DOBJ.EVT_NOT_FOUND
Event Handler not found".
On checking the logs, this is what I get there. Since I'm a newbie, I'm not able to figure out what's happening.
Any help would be great.
java.sql.SQLIntegrityConstraintViolationException: ORA-01400: cannot insert NULL into ("XELADM"."UPA_USR"."ACT_KEY")
at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:85)
at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:112)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:173)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:455)
at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:413)
at oracle.jdbc.driver.T4C8Oall.receive(T4C8Oall.java:1030)
at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:194)
at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:947)
at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1222)
at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:3381)
at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:3462)
at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:1349)
at org.jboss.resource.adapter.jdbc.WrappedPreparedStatement.executeUpdate(WrappedPreparedStatement.java:365)
at com.thortech.xl.dataaccess.tcDataBase.writePreparedStatement(Unknown Source)
at com.thortech.xl.dataobj.PreparedStatementUtil.executeUpdate(Unknown Source)
at com.thortech.xl.audit.auditdataprocessors.UserProfileRDGenerator.insertUserProfile(Unknown Source)
at com.thortech.xl.audit.auditdataprocessors.UserProfileRDGenerator.processUserProfileChanges(Unknown Source)
at com.thortech.xl.audit.auditdataprocessors.UserProfileRDGenerator.processAuditData(Unknown Source)
at com.thortech.xl.audit.genericauditor.GenericAuditor.processAuditMessage(Unknown Source)
at com.thortech.xl.audit.engine.AuditEngine.processSingleAudJmsEntry(Unknown Source)
at com.thortech.xl.audit.engine.AuditEngine.processOfflineNew(Unknown Source)
at com.thortech.xl.audit.engine.jms.XLAuditMessageHandler.execute(Unknown Source)
at com.thortech.xl.schedule.jms.messagehandler.MessageProcessUtil.processMessage(Unknown Source)
at com.thortech.xl.schedule.jms.messagehandler.AuditMessageHandlerMDB.onMessage(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.jboss.invocation.Invocation.performCall(Invocation.java:359)
at org.jboss.ejb.MessageDrivenContainer$ContainerInterceptor.invoke(MessageDrivenContainer.java:495)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)
at org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.invoke(MessageDrivenInstanceInterceptor.java:116)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
at org.jboss.ejb.plugins.RunAsSecurityInterceptor.invoke(RunAsSecurityInterceptor.java:109)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)
at org.jboss.ejb.MessageDrivenContainer.internalInvoke(MessageDrivenContainer.java:402)
at org.jboss.ejb.Container.invoke(Container.java:960)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke(JMSContainerInvoker.java:1092)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageListenerImpl.onMessage(JMSContainerInvoker.java:1392)
at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:266)
at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:906)
at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:170)
at org.jboss.mq.SpySession.run(SpySession.java:323)
at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:194)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:761)
at java.lang.Thread.run(Thread.java:619)
2011-03-18 15:55:01,283 ERROR [XELLERATE.AUDITOR] Class/Method: UserProfileRDGenerator/insertUserProfile encounter some problems: Failed to insert user profile record in table UPA_USR for auditee 5943
2011-03-18 15:55:01,283 ERROR [XELLERATE.AUDITOR] Class/Method: UserProfileRDGenerator/insertUserProfile encounter some problems: {1}
com.thortech.xl.orb.dataaccess.tcDataAccessException
at com.thortech.xl.dataaccess.tcDataAccessExceptionUtil.createException(Unknown Source)
at com.thortech.xl.dataaccess.tcDataBase.createException(Unknown Source)
at com.thortech.xl.dataaccess.tcDataBase.writePreparedStatement(Unknown Source)
at com.thortech.xl.dataobj.PreparedStatementUtil.executeUpdate(Unknown Source)
at com.thortech.xl.audit.auditdataprocessors.UserProfileRDGenerator.insertUserProfile(Unknown Source)
at com.thortech.xl.audit.auditdataprocessors.UserProfileRDGenerator.processUserProfileChanges(Unknown Source)
at com.thortech.xl.audit.auditdataprocessors.UserProfileRDGenerator.processAuditData(Unknown Source)
at com.thortech.xl.audit.genericauditor.GenericAuditor.processAuditMessage(Unknown Source)
at com.thortech.xl.audit.engine.AuditEngine.processSingleAudJmsEntry(Unknown Source)
at com.thortech.xl.audit.engine.AuditEngine.processOfflineNew(Unknown Source)
at com.thortech.xl.audit.engine.jms.XLAuditMessageHandler.execute(Unknown Source)
at com.thortech.xl.schedule.jms.messagehandler.MessageProcessUtil.processMessage(Unknown Source)
at com.thortech.xl.schedule.jms.messagehandler.AuditMessageHandlerMDB.onMessage(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.jboss.invocation.Invocation.performCall(Invocation.java:359)
at org.jboss.ejb.MessageDrivenContainer$ContainerInterceptor.invoke(MessageDrivenContainer.java:495)
at org.jboss.resource.connectionmanager.CachedConnectionInterceptor.invoke(CachedConnectionInterceptor.java:158)
at org.jboss.ejb.plugins.MessageDrivenInstanceInterceptor.invoke(MessageDrivenInstanceInterceptor.java:116)
at org.jboss.ejb.plugins.CallValidationInterceptor.invoke(CallValidationInterceptor.java:63)
at org.jboss.ejb.plugins.AbstractTxInterceptor.invokeNext(AbstractTxInterceptor.java:121)
at org.jboss.ejb.plugins.TxInterceptorCMT.runWithTransactions(TxInterceptorCMT.java:350)
at org.jboss.ejb.plugins.TxInterceptorCMT.invoke(TxInterceptorCMT.java:181)
at org.jboss.ejb.plugins.RunAsSecurityInterceptor.invoke(RunAsSecurityInterceptor.java:109)
at org.jboss.ejb.plugins.LogInterceptor.invoke(LogInterceptor.java:205)
at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invoke(ProxyFactoryFinderInterceptor.java:138)
at org.jboss.ejb.MessageDrivenContainer.internalInvoke(MessageDrivenContainer.java:402)
at org.jboss.ejb.Container.invoke(Container.java:960)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker.invoke(JMSContainerInvoker.java:1092)
at org.jboss.ejb.plugins.jms.JMSContainerInvoker$MessageListenerImpl.onMessage(JMSContainerInvoker.java:1392)
at org.jboss.jms.asf.StdServerSession.onMessage(StdServerSession.java:266)
at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:906)
at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:170)
at org.jboss.mq.SpySession.run(SpySession.java:323)
at org.jboss.jms.asf.StdServerSession.run(StdServerSession.java:194)
at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:761)
at java.lang.Thread.run(Thread.java:619)
Thanks,
NikhilCheck for the ACT_KEY in the USR table in the database for User with the key 5943. It should not be null. Just a hunch by looking at the error and of course as Kevin said, you need to truncate the jms stuff.
-Bikash -
Post Process Event Handler not getting user's CURRENT_STATE for a UDF field
I have a post process event handler in OIM R2 BP04 , which runs on Trusted Reconciliation and it compares user's ("CURRENT_USER") state and ("NEW_USER_STATE") and based on that derives a business logic.
The problem that i am facing is that, it is not able to get the User's ("CURRENT_USER") state for a UDF(EMAIL_LIST) field and it is coming as null,and hence is breaking the business logic.The same Event Handler is working on TEST and QA ( 4 node cluster)environments and is not working on PROD environment( 4 node cluster).
The different thing that was done on was that during the initial recon the event Handler was not present and after the initial load of the users i have manually executed the database sql query which have updated the "EMAIL_LIST field manually for all the users
I think that since during the initial recon as the EMAIL_LIST was not populated and was populated through the SQL update for all the users, the orchestration inter event data does not contain email list, and so it is coming as null.
But i am seeing the same behavior for new records as well, which are created and then updated after event handler is registered.
Please reply, if you have encountered something similar.
Thnx
AkshatYes i need the old state, which is
Identity[] oldUserStatesIdntArr =
(Identity[])(Identity[])interEventData.get("CURRENT_USER"); -
Simple WD4A Portal Eventing does not work
Hello togehter,
I'm trying to get a simple Portal Eventing to work with two WebDynpro ABAP components. I read several threads as well as a blog from Thomas Jung about this but still have no eventing. What am I doing wrong? I think that it might be only a little obstacle but I can't get it. So what I didi is:
1.) Created 1st WD4A application with a button and an action behind that button:
DATA: l_api_component TYPE REF TO if_wd_component,
l_portal_manager TYPE REF TO if_wd_portal_integration.
l_api_component = wd_comp_controller->wd_get_api( ).
l_portal_manager = l_api_component->get_portal_manager( ).
l_portal_manager->fire(
portal_event_namespace = 'urn:my.namespace'
portal_event_name = 'test_event'
portal_event_parameter = 'testValue' ).
2.) Created 2nd WD4A application with the following code in the WDDOinit-Method:
DATA: l_api_component TYPE REF TO if_wd_component,
l_portal_manager TYPE REF TO if_wd_portal_integration,
view TYPE REF TO if_wd_view_controller.
l_api_component = wd_comp_controller->wd_get_api( ).
l_portal_manager = l_api_component->get_portal_manager( ).
view ?= wd_this->wd_get_api( ).
l_portal_manager->subscribe_event(
portal_event_namespace = 'urn:my.namespace'
portal_event_name = 'test_event'
view = view
ACTION = 'CATCH_EVENT' ).
and an action.
method ONACTIONCATCH_EVENT .
data: EVT_NAME type STRING,
evt_parameter type string.
EVT_NAME = WDEVENT->GET_STRING( NAME = 'PORTAL_EVENT_NAME' ).
if EVT_NAME = 'test_event'.
evt_parameter = WDEVENT->GET_STRING( NAME = 'PORTAL_EVENT_PARAMETER' ).
DATA:
ls_text TYPE if_main=>element_main,
node_main TYPE REF TO if_wd_context_node,
elem_main TYPE REF TO if_wd_context_element.
node_main = wd_context->get_child_node( name = `MAIN` ).
evt_parameter = 'IT WORKED'.
else.
evt_parameter = 'did not work'.
endif.
ls_text-text_receiver = evt_parameter.
node_main->bind_element( ls_text ).
endmethod.
3.) FInally I created two iViews (for each WD4A application) and a page, linked the iViews in the page and made a preview. Unfortunately nothing happend in the second iVIew with the 2nd WD4A application in it.
Any help?
Thanx in advance
MatthiasHello,
thanks for your answers. But the problem is not yet solved, the link gives nothing new for me.
To amend my first post:
After having created and activated my both small WD4A applications, I created 2 similar iViews (iViews for WebDynpro -> and chose WD ABAP) in my portal. Both iViews have the same namespace (which is SAP - is this ok?) and no application parameter.
Then I created both a Standard SAP page and a WebDynpro proxy page and added the 2 iViews as deltalink. The page and the iViews have the same prefix (but this is not important, isn't it?).
--> In both pages the portal eventing does not work
The ABAP server and the Portal server are the same machine and I call the portal with the full qualified domain name:
http://<servername>.<domain>:50000/irj/portal
When I test my WD4A applications in se80 I get the path http://<servername>.<domain>:8000/sap/bc/webdynpro/sap/z_event_receiver?sap-language=EN
so this is the same domain.
I even have an entry in my hosts-file for
<myInternalIp> <servername>.<domain>
- Do I have to specify the domain explicitly in addition when integration the WD4A applications in the portal?
- Is there a correlation between the Portal Event namespace, the namespace of my iViews and page and the domain name of my server?
- Does the portal event namespave to have the prefix urn: or not?
Thanks again in advance -
Javascript embedded in button pl/sql event handler not being executed
Javascript calls not working from pl/sql button event handler. What am I missing? Are specific settings needed to execute javascript from pl/sql proceedures?
Example: Want to toggle target='_blank' off and on in a button pl/sql event handler to open url call in new window & then reset when processing submit is done & the app returns to the form.
portal form button's pl/sql submit handler:
begin
htp.p('<script language=JavaScript>') ;
htp.p('this.form.target="_blank"') ;
htp.p('</script>') ;
PORTAL.wwa_app_module.set_target('http://www.oracle.com') ;
htp.p('<script language=JavaScript>') ;
htp.p('this.form.target="_blank"') ;
htp.p('</script>') ;
end ;
Putting the following in the button's javascript on_click event handler works great:
this.form.target='_blank'
to force opening new window with a call in the button's submit pl/sql code via:
PORTAL.wwa_app_module.set_target('http://www.oracle.com') ;
but then the target='_blank' is left on when the submit is done & we return to the form.
putting the above javascript as a function (called fcn_newpage) elsewhere (e.g., after form opens) & calling in the submit pl/sql with
htp.p('fcn_newpage') ;
also doesn't work.
Metalink thought this was an application issue instead of a bug, so thought I'd see if anyone knows what's going wrong here. (Portal 9.0.4.1)thanks for your discussion of my post.
Please clarify:
"htp.p('fcn_newwindow') sends a string":
What would you suggest the proper syntax for a function fcn_newwindow() call from a pl/sql javascript block that differs from
htp.p('<script language="Javascript">') ;
htp.p('fcn_newwindow');
htp.p('</script>');
or more simply
htp.p('fcn_newwindow') ;
More generally, what I'm trying to figure out is under what conditions javascript is executed, if ever, in the pl/sql of a button (either the submit or custom event handler, depending on the button).
I've seen lots of posts asking how to do a simple htp.p('alert("THIS IS TROUBLE")') ; in a pl/sql event handler for a button on a form, but no description of how this can be done successfully.
In addition to alerts, in my case, I'd like to call a javascript fcn from a pl/sql event handle that would pass a URL (e.g., http://www.oracle.com) where the javascript fcn executed
window.open(URL). The API call to set_target(URL) in pl/sql has no ability to open in a new window, so calling that is inadequate to my needs and I must resort to javascript.
Its clear in the PL/SQL of a button, you can effect form components since p_session..set_target & p_session.get_target set or get the contents of form components.
So to see if javascript ever works, I tried to focus on something simple that only had to set what amounts to an enviromental variable when we returned to the form after a post. I chose to try to change the html value of TARGET from javascript in the PL/SQL button because it doesn't need to be implemented until we finish the post and return to the form.
So I focused on a hack, setting this.form.TARGET='_blank' in the on_click event handler that forced every subsequent URL call or refresh of the form to be a new window. I then wanted to turn off opening new windows once I'd opened the URL call in a new window by setting TARGET='' in the portal form. I can achieve what I want by coding this.form.TARGET='' in the javascript (on_focus, on_change, or on_mousedown, ...) of every form component that might refresh the form. However, that is a ridiculous hack when a simple htp.p('<script>') ; htp.p('this.form.target=""') ; htp.p('</script>') ; at the end of the button's pl/sql event handle should do the same thing reliably if javascript ever works in the pl/sql event handler.
If we didn't have access to form components through p_session calls, I'd assume it was a scope issue (what is available from the pl/sql event handler). But unless my syntax is just off, when, if ever, can javascript be used in a portal form's pl/sql event handler for a button?
if I code a javascript funtion in the forms' pl/sql before displaying form:
htp.p('<script language="JavaScript">') ;
htp.p('function fcn_new_window(URL)') ;
htp.p('window.open(URL)' ) ;
htp.p('</script>') ;
the function can be called from a button's on_click javascript event handler:
fcn_new_window('http://www.oracle.com')
but from the same button's pl/sql submit event handler this call doesn't work: htp.p('fcn_new_window("http://www.oracle.com")')
So my questions remain: Is there other syntax I need, or does javascript ever work properly from the pl/sql of a form button's event handler? If it doesn't work, isn't this a bug that should be fixed by Oracle?
I can probably figure out hacks to make things work the way I need, but executing javascript from pl/sql event handlers seems to be the expected way to affect portal html pages (forms, reports, ...) and it seems not to work as expected. I don't feel I should have to implement hacks for something as simple as calling a javascript function from pl/sql when almost every example I've found in metalink or the forums or Oracle Press's "portal bible" suggests using javascript from pl/sql via the utility htp.p() to effect web page components in portal.
My TAR on the subject, while still open, returned the result basically: "We can reproduce your situation. Everything looks okay to us, but we can't explain how to use javascript where you want or point you to any documentation that would solve your problem or expain why it should not work the way you want it to. We don't feel its a technical issue. Why don't you post the problem on the portal applications forum."
I'm hoping I'm just missing something fundamental and everything will work if I implement it a little differently. So if anyone sees my error, please let me know.
by the way, not sure this is germain, but in reference to your comment:
"redirections in pl/sql procedures give a peculiar result. in a pl/sql procedure, usually, portals give the last redirection statement and ignore anything else coming after it."
if I try to raise an alert:
htp.p('alert("you screwed up")');
return;
in a pl/sql event handler, it still doesn't raise the alert, even though its the last thing implemented in the event handler. But if I set the value of a text box using p_session..set_value_as_string() at the same spot, it correctly sets the text box value when I return to the form. -
Bounded Taskflow Exception Handler not working with Page Fragements
I have one bounded - taskflow task-flow-definition
<?xml version="1.0" encoding="windows-1252" ?>
<adfc-config xmlns="http://xmlns.oracle.com/adf/controller" version="1.2">
<task-flow-definition id="task-flow-definition">
<default-activity>view1</default-activity>
<managed-bean>
<managed-bean-name>backing_main</managed-bean-name>
<managed-bean-class>view.backing.Main</managed-bean-class>
<managed-bean-scope>pageFlow</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>backing_view1</managed-bean-name>
<managed-bean-class>view.backing.View1</managed-bean-class>
<managed-bean-scope>pageFlow</managed-bean-scope>
</managed-bean>
<managed-bean>
<managed-bean-name>backing_view2</managed-bean-name>
<managed-bean-class>view.backing.View2</managed-bean-class>
<managed-bean-scope>pageFlow</managed-bean-scope>
</managed-bean>
<exception-handler>view2</exception-handler>
<view id="view1">
<page>/view1.jsff</page>
</view>
<view id="view2">
<page>/view2.jsff</page>
</view>
<use-page-fragments/>
</task-flow-definition>
</adfc-config>view1.jsff contains one command button, which calls one ActionListener
<?xml version='1.0' encoding='windows-1252'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
<af:commandButton text="commandButton 1" actionListener="#{pageFlowScope.backing_view1.callMyFunction}"
binding="#{pageFlowScope.backing_view1.commandButton1}"
id="commandButton1"/>
<!--oracle-jdev-comment:auto-binding-backing-bean-name:backing_view1-->
</jsp:root>view1.java callMyFunction throws an Exception
public void callMyFunction(ActionEvent event) throws Exception{
throw new Exception();
}view2.jsff is an exception handler
<?xml version='1.0' encoding='windows-1252'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
<af:activeOutputText value="Exception Occured"
binding="#{pageFlowScope.backing_view2.activeOutputText1}"
id="activeOutputText1"
inlineStyle="font-size:xx-large; color:red;"/>
<!--oracle-jdev-comment:auto-binding-backing-bean-name:backing_view2-->
</jsp:root>above taskflow is dragged-drop as a Region in one file main.jspx
<?xml version='1.0' encoding='windows-1252'?>
<jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.1"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:af="http://xmlns.oracle.com/adf/faces/rich">
<jsp:directive.page contentType="text/html;charset=windows-1252"/>
<f:view>
<af:document binding="#{pageFlowScope.backing_main.document1}"
id="document1">
<af:form binding="#{pageFlowScope.backing_main.form1}" id="form1">
<af:region value="#{bindings.taskflowdefinition1.regionModel}"
id="taskf1"
binding="#{pageFlowScope.backing_main.taskf1}"/>
</af:form>
</af:document>
</f:view>
<!--oracle-jdev-comment:auto-binding-backing-bean-name:backing_main-->
</jsp:root>*pressing a commandButton on view1.jsff throws an Exception as expected but does not go to exceptionHandler [view2.jsff]*
However, this does work with Bounded Task-Flow without page fragments , view1.jspx contains one button, calling one method which throws an Exception,
view2.jspx is an Exception Handler, and in this case it redirects to the view2.jspx [error page]
any ideas?
thanksHi,
Pretty much. However, you got the event part wrong, which is mostly my fault here. First, let put down some general JSF facts about event handling.
1. http://java.sun.com/javaee/5/docs/api/javax/faces/component/UIComponent.html#queueEvent(javax.faces.event.FacesEvent)
2. So, basically, queuing an event on a component means queuing it on its parent until you reach the UIViewRoot that will really actually queue it. That strategy allows iterating components to intercept event queued on their children to record the row index as well so that the data model can be synchronized correctly during the broadcast phase (see http://java.sun.com/javaee/5/docs/api/javax/faces/component/UIData.html#queueEvent(javax.faces.event.FacesEvent) and http://java.sun.com/javaee/5/docs/api/javax/faces/component/UIData.html#broadcast(javax.faces.event.FacesEvent))
3. Exceptions that aren't handled by the exception handler are thrown during broadcast or various process* methods.
So, the catch component must leverage these facts to intercept events queued on its children (by overriding queueEvent method) wrapping the original event in a custom on that flag the catch component itself as the source of the event. The result will be that the broadcast method of the catch component will be called to handle the event. The broadcast method must then unwrap the event (to get the original event), gets the original source, then call originalSource.broadcast(originalEvent) within a try-catch block.
Does it make any more sense put that way? Note that it's an obscure part of JSF so I cannot make it incredibly simple either.
Regards,
~ Simon -
OIM 11gR2 - RoleUser PostProcess Event Handler not triggered
Hi,
I'm trying to create a postprocess event-handler for RoleUser entity so that when a role is assigned (or removed) to a user an UDF is populated with the list of its roles.
I developed my event-handler and registered it following instructions on http://docs.oracle.com/cd/E27559_01/dev.1112/e27150/oper.htm#OMDEV4749 but the event-handler is not triggered.
I've read and tried a lot of things but nothing seems to work.
I use System.out.println() and a Logger in the event-handler methods as well as breakpoints debugging via Eclipse, all this indicates the event-handler is not triggered.
I checked the event-handler is registered by using getEventHandlers(RoleUser,CREATE) method on IAMAppDesignMBean through Enterprise Manager. Result is :
Postprocess,-2147483648,PostProcessingInitiation,/metadata/iam-features-request/event-definition/EventHandlers.xml,true
Postprocess,FIRST,MyHandler,Plugin:MyHandler,false
Postprocess,FIRST,MyHandler,Plugin:MyHandler,false
Postprocess,FIRST,MyHandler,Plugin:MyHandler,false
Postprocess,FIRST,MyHandler,Plugin:MyHandler,false
Postprocess,1020,RoleGrantPostProcessActionHandler,/metadata/iam-features-identity/event-definition/EventHandlers.xml,false
Postprocess,9988,AsyncHandler,/metadata/iam-features-asyncwsclient/EventHandlers.xml,true
Postprocess,3000000,CallBackOAACGWithApprove,/metadata/iam-features-rolesod/EventHandlers.xml,true
Postprocess,2147483647,RequestCompleted,/metadata/iam-features-request/event-definition/EventHandlers.xml,true
Note that I dont understand why the handler appears four times..
Also, when I unregister it, it still appears one time.
Here is my event handler XML file (in META-INF folder of the plugin zip) :
<?xml version='1.0' encoding='utf-8'?>
<eventhandlers
xmlns="http://www.oracle.com/schema/oim/platform/kernel/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.oracle.com/schema/oim/platform/kernel orchestration-handlers.xsd">
<action-handler
class="package.MyHandler"
entity-type="RoleUser"
operation="ANY"
name="MyHandler"
stage="postprocess"
order="FIRST"
sync="TRUE" />
</eventhandlers>
plugin.xml file (root of plugin zip) :
<?xml version="1.0" encoding="UTF-8"?>
<oimplugins xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<plugins pluginpoint="oracle.iam.platform.kernel.spi.EventHandler">
<plugin
pluginclass="package.MyHandler"
version="1.0"
name="Myhandler" />
</plugins>
</oimplugins>
Java code (in a JAR in lib folder of plugin zip) :
public class MyHandler implements PostProcessHandler {
@Override
public EventResult execute(long processId, long eventId, Orchestration orchestration) {
System.out.println("Inside EventResult execute ");
LOGGER.log(Level.SEVERE, "Inside eventResult execute");
// Some code
return new EventResult();
@Override
public BulkEventResult execute(long processId, long eventId, BulkOrchestration orchestration) {
String operation = orchestration.getOperation().trim().toString();
System.out.println("<---------- Calling " + getClass().getName() + ": Operation[" + operation + "] Execute ---------->");
LOGGER.log(Level.SEVERE, "Inside BulkEventResult execute");
// Some code
return new BulkEventResult();
Maybe I'm missing something ? Any help would be really appreciated
Thanks,
Gael
EDIT :
Also note that I see these messages in the logs but I'm not sure it concern my event handler from what I read on some pages :
XML schema validation failed for XML eventhandlers and it will not be loaded by kernel.
[CALLBACKMSG] Found 0 possible matches for applicable policies for step POST_PROCESS, entity RoleUser, operation CREATE.
Related link : Post process event handler when a role is created or modified in OIMI eventually got it working but I'm not sure of how.. !
I changed the name of the handler (it was not "MyHandler" but something very long, I shortened it). I copy and paste exactly what was described here : Post process event handler when a role is created or modified in OIM. I did purge cache. I tried to apply it on another entity (Role), it was triggered, then I applied it back to RoleUser and it still works.
If it can help someone, my plugin zip contains :
plugin.xml :
<?xml version="1.0" encoding="UTF-8"?>
<oimplugins xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<plugins pluginpoint="oracle.iam.platform.kernel.spi.EventHandler">
<plugin pluginclass="fr.xxx.RoleUserProcessor"
version="1.0" name="RoleUserProcessor" />
</plugins>
</oimplugins>
META-INF/EventHandlers.xml :
<?xml version="1.0" encoding="UTF-8"?>
<eventhandlers xmlns="http://www.oracle.com/schema/oim/platform/kernel"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.oracle.com/schema/oim/platform/kernel orchestration-handlers.xsd">
<action-handler class="fr.xxx.RoleUserProcessor"
entity-type="RoleUser" operation="ANY" name="RoleUserProcessor" order="9999"
stage="postprocess" sync="TRUE" />
</eventhandlers>
lib/xxx.jar/RoleUserProcessor.java :
@Override
public EventResult execute(long processId, long eventId, Orchestration orchestration) {
LOGGER.log(Level.INFO, "Execution RoleUserProcessor EventHandler (mode non bulk)");
String operation = orchestration.getOperation().trim().toString();
LOGGER.log(Level.INFO, "Operation : " + operation);
return new EventResult();
@Override
public BulkEventResult execute(long processId, long eventId, BulkOrchestration orchestration) {
LOGGER.log(Level.INFO, "Execution RoleUserProcessor EventHandler (mode bulk)");
String operation = orchestration.getOperation().trim().toString();
LOGGER.log(Level.INFO, "Operation : " + operation);
return new BulkEventResult();
Thank you
Also, a thing that may help some people, I found out that the ORCHEVENTS table in OIM schema contains the history of handlers triggered. -
SubVI with while loop + event structure not working in multi tab VI
Hello Everyone,
I am developing an interface for the control of a prober using Labview 2012, and I am stuck with some issue.
To start with I provide you with a simplified version of my control interface VI, and with the sub-VI used to build and manage the wafer maps.
The VI consists of several tabs: Prober Initialization, Wafer Handling, Wafer Map, Status, Error.
The sub-VI can:
1/ initialize the grid to display the map (sub VI Init Grid not provided here)
2/ import XY coordinates from a txt file (sub VI Wafer Map Import)
3/ display the coordinates and index of the die below the cursor
4/ and when a die position is double clicked, and the boolean "Edit Wafer Map" is true, then the user can change the state (color) of the die between On-wafer die and Selected Die
My issue:
If I use the sub-VI by itself, it works fine. However when I use it as a sub-VI in the tab "Wafer Map", the map does not build up and I can no further use the embedded functionalities in the sub-VI.
I suspect the while loop + event structure of the sub-VI to be the bottleneck here.
However I don't know which way to go, that's why I'd be glad to have some advice and help here.
Thank you.
Florian
Solved!
Go to Solution.
Attachments:
Control Interface.zip 61 KBHi NitzZ,
Thank you for your reply.
I tried to save the VIs in LV10, please tell me if you can open them now.
Inside he event structure there is quite some code, and since I don't want to make the main vi too bulky, I would like to keep it as a sub-VI.
As you can see from the sub-VI, the event structure is used for extracting cursor position and tracking the double click action. These events are linked, through a property node, to the image "Wafer Map" which is passed to the main vi through connector pane.
All values are passed this way as well (through connector pane). Is there another way?
Maybe "refnum", but I don't really understand how to use them...
If I use the event structure in the main vi, the wafer map is still not working. I tried it earlier.
To implement the multi tab front panel, I used a tab control, and a for loop + case structure. For each element of the case structure, there is a corresponding action.
For the case where I put the code (element=2) for Wafer Map, I also control the execution of the code with a case structure activated by the button "REFRESH". Otherwise I end up with a freezing of the panel right after the start.
I hope these comments help you understand better.
Regards,
Florian
Attachments:
Control Interface.zip 104 KB -
List Item event receiver not working: SharePoint 2010
Hi,
I have ceated one custom list and also created a Event reciever solution using Visual Studio 2010.
In the event reciever I added ItemAdded, ItemUpdated events and did some my business related coding.
It was worked very well when I add/edit the list item.
But, now suddenly it stopped working!, I i really don't know what went wrong suddenly.
Only thing I did is, created one more solution event reciver and added some more columns to the list.
I then reverted all these changes and deleted the new event reciever from the site solution.
I am able to build and deploy the solution in VS 2010, and I could see the solution in site solution but events are not firing when I created/edited the list items
Any idea what went wrong and how can I get it back to work.
It has spoiled my all the work and I am unable to proceed.
Please let me know if anyone have any inputs.
I also tried following things: restart visual studio and deploy again, restart IIS, restart system itself, actvate-deactivate solution manually in site, GAC the dll manually.
But nothing has worked for me.
One more thing, I am using this solution as Sandbox solution and when I tried to make Sandbox as false and then deploy it gave me error like:
"Error occurred in deployment step 'Activate Features': Operation is not valid due to the current state of the object."
Is this something related to my above problem?
Thanks, SharathCheck Event receivers using powershell:-
Add-PsSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
$spWeb = Get-SPWeb -Identity "sitename"
$spList = $spWeb.Lists["yourlistname"]
$spList.EventReceivers | Select assembly,name
Replace "sitename" with your site url and "yourlistname" with list name.
Once you confirm the event receivers, use below to delete them
Add-PsSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
$spWeb = Get-SPWeb -Identity "your site url"
$spList = $spWeb.Lists["TrackTravel"]
$evts = $spList.EventReceivers | where {$_.Assembly -eq ""your assembly"}
$evts
if ($evts.Count -gt 0) {
foreach ($evt in $evts) {
Write-Host("Deleting..." + $spList.RootFolder.ServerRelativeUrl + ", " + $evt.Type)
$evt.Delete()
Once you run this, you can now redeploy your solution.
http://social.technet.microsoft.com/Forums/en/sharepoint2010general/thread/a911a64f-b4cb-49a8-ad61-899d4e418c2a
ganesh -
With display type native event is not working in my wd application
Dear Friends,
I have few interactive forms created webdynpro components.
in SFP: formtype: ZCI and inserted the webdynpro script in the layout and interface type is DDIC.
in Webdynpro: taken IF form UI element and with Enable check box checked(ON) and display type is Native.
when i run my wd application interactive forms is opening but when i click on button on webdynpro or on enter of input field event is not getting trigger. cursor is showing wait icon and in busymode only.
if i try with display type as activex it is working fine.
But i don't want to use type as Activex.
One more thing initially i have created 2 interative forms with those forms with displya type native is working fine, for new forms only the poblem is coming.
please let me know how to get rid of this.
Thanks,
Mahesh.GattuHi ganesh,
i hope you have already followed the process what i mentioned in my question.
above that some times we are facing this busy mode issues, might be.. there coudl be some problem when we insert the webdynpro script.
on sfp layout from utilities insert the webdynpro script.
then sheck the script editor by selecting the data node in hierarchy tab.
make sur the both event *presave and *formload are filled with some in built script and the language is Java script and Client side.
then save activate the form and try.
all the best.
Thanks,
mahesh.gattu -
hi,
I'm using Microsoft virtual earth map 6.2 (bing Map) in my application.On map showing number of images.On Each image there is onClick event that select image if user press left mouse button while holding Ctrl key .For this I wrote java-script function where I'm using Window.event.button (To check mouse button) and window.event. ctrlKey(To check control key) But these both are not working in Firefox 4.0 ,the same is working in Firefox 3.6X version perfectly.
ThanksThe same problem is in Firefox 5.0 version too
-
A problem with a timer event sometimes not working
Guys...
I have this problem:
I have a child added to the stage eacg 5 seconds and if this child still on the stage after another 5 seconds, you go to the next frame...
My problem is that sometimes it does not work, meaning that you can have this child on the stage for ever and nothing will happen... but sometimes it does work properlly...
Is there any mistakes in my code or what should I do?
var miC4:Loader = new Loader();
miC4.load(new URLRequest("nivel1.jpg"));
addChild(background1);
background1.addChild(miC4);
if (!lives){var lives:int = 3;}
var enem1:Loader = new Loader();
enem1.load(new URLRequest("1enemigo.png"));
var enemy1Array:Array = new Array(enem1);
var t1:Timer=new Timer(5000,1);
var t2:Timer=new Timer(10500,1);
recycleEnemy();
function removeEnemy(){
background1.removeChild(enem1);
recycleEnemy();
function touchListener(event:MouseEvent){
enem1.removeEventListener(MouseEvent.CLICK, touchListener);
removeEnemy();
function recycleEnemy():void{
enem1.x=(50 + Math.random() * (stage.stageWidth - 150));
enem1.y=(50 + Math.random() * (stage.stageHeight + -100));
t1.addEventListener(TimerEvent.TIMER, addEnemy);
t1.start();
t2.addEventListener(TimerEvent.TIMER, bang1);
t2.start();
function addEnemy(e:TimerEvent):void {
background1.addChild(enem1);
enem1.addEventListener(MouseEvent.CLICK, touchListener);
enemy1Array.push(enem1);
function bang1(e:TimerEvent):void {
if(enem1.stage){
lives--;
if (lives >= 0) {
t1.stop();
t2.stop();
removeChild(background1);
gotoAndStop(5);
Thanks a lot!!!!ok, so there are a number of issues.
the first error is enemy1Array contains two duplicate objects ~5 seconds after entering that frame. i'm not sure if that's a problem because i don't see where you're even using enemy1Array, but you should fix that error (if enemy1Array is used) or remove enemy1Array (if it's not used).
the next problem is you can call recycleEnemy more than once and re-add those timers. flash will probably protect yourself from the bad coding but you shouldn't count on it. when you call removeEnemy you should stop those timers and remove those listeners before re-adding another pair of listeners. or just reset the timers in removeEnemy and start them in recycleEnemy. there's no need to re-add those listeners more than once. they could be added in your if(!lives) conditional.
the next (and probably most important) error is your removeChild(background1) statement which fails to remove enem1. so, when you re-enter that frame you have an enem1 on-stage that you can't kill and can't even reference. remove it when you remove the background1.
Maybe you are looking for
-
This is for the Droid Turbo, wasn't doing anything different from last month and in one day the phone used over 75% of my data. They gave me the run around on the phone, I don't use it for social media or things like that either.
-
How to Update Approved Supplier List with API..
I am working on an interface and need to be able to update the PRIMARY_VENDOR_ITEM in the PO_APPROVED_SUPPLIER_LIST table. Can this be done with the Puchasing Document Open Interface ? I have been looking through the notes on this and cannot find it
-
Hi Experts, I am new this concept of SSL. I have a ejb sitting in a weblogic. I dont have user based authentication. But only from certain hosts, my ejb should be accessible. I read lot of theoires about certificate, keystore, CA etc. But can any one
-
I am getting an error when opening FCE HD "The application FCEHD quit unexp
I have been using FCE for several months. I was capturing a video from my cam and when it was finished FCE froze on me. I quit the app and now I can't get it to work at all. I trashed my preferences and even tried uninstalling FCE completely and rein
-
Makes it possible to create view with parameters
makes it possibel to create view with paramater, example create or replace view v_test(segment varchar2) select * from ref_user where segment = segmentThanks