Null object reference starling
This function is called within a for loop to create 4 buttons ... select the right frame and display it.
Problem is I get a null object reference in addChild... line.
I'm using starling and I don't know how to get rid of this error. Can you help ?
private function newButton(i:int):void
var newBtn:_menuButton = new _menuButton();
newBtn.gotoAndStop(i + 1);
menuGroup[i] = newBtn;
addChild(newBtn as DisplayObject); //starling.display.DisplayObject
newBtn.addEventListener(TouchEvent.TOUCH, onTouch, false, 0, true);
Also the code on Starling :
public function addChild(child:DisplayObject):void
addChildAt(child, numChildren);
/** Adds a child to the container at a certain index. */
public function addChildAt(child:DisplayObject, index:int):void
if (index >= 0 && index <= numChildren)
child.removeFromParent(); //I get error in this line primarly.
mChildren.splice(index, 0, child);
child.setParent(this);
child.dispatchEvent(new Event(Event.ADDED, true));
if (stage) child.dispatchEventOnChildren(new Event(Event.ADDED_TO_STAGE));
else
throw new RangeError("Invalid child index");
Also _menuButton is a flash MovieClip ... I am thinking you can't unite flash and starling this way ...maybe have to implement it using starling MovieClip.
Similar Messages
-
Web-UI error message "Access via 'NULL' object reference not possible"
I need some help, I'm not a Basis person but I need to get this connection problem resolve.
This problem is in our DEV ICWeb system. After logging in to Web-UI, I got a error message "Access via 'NULL' object reference not possible". We have 3 clients (100, 220, & 310) in DEV and all 3 clients are giving me the same error message.
From the help.sap.com, I found this topic http://help.sap.com/saphelp_nwes70/helpdata/en/84/43f0d786304e19a652a8f80909a8ec/content.htm
but in the document it asked to go to SM59 to check the ESH_APPL_WS_TEMPLATEENGINE destination. But we don't have that destination setup in all our systems.
Here is the complete error message:
Error when processing your request
What has happened?
The URL http://crm-dev.staff.copa:8000/sap/bc/bsp/sap/crm_ui_frame/BSPWDApplication.do was not called due to an error.
Note
■The following error text was processed in the system CD1 : Access via 'NULL' object reference not possible.
■The error occurred on the application server CRM-DEV_CD1_00 and in the work process 0 .
■The termination type was: RABAX_STATE
■The ABAP call stack was:
Method: GET_DATA_LOSS_HANDLER of program CL_CRM_UI_CORE_APPL_CONTROLLERCP
Method: GET_DATA_LOSS_HANDLER of program CL_CRM_UI_CORE_APPL_CONTROLLERCP
Method: EH_TRIGGER_NAVIGATION of program CL_CRM_UI_CORE_APPL_CONTROLLERCP
Method: SET_WORKAREA_CONTENT of program CL_CRM_UI_CORE_APPL_CONTROLLERCP
Method: PROCESS_NAV_QUEUE of program CL_BSP_WD_VIEW_MANAGER========CP
Method: DO_INIT of program CL_CRM_UI_FRAME_APP_CONTROLLERCP
Method: DO_INIT of program CL_BSP_CTRL_ADAPTER===========CP
Method: GET_PAGE_CONTEXT_CURRENT of program CL_BSP_CONTEXT================CP
Method: ON_REQUEST_ENTER of program CL_BSP_RUNTIME================CP
Method: ON_REQUEST of program CL_BSP_RUNTIME================CP
What can I do?
■If the termination type was RABAX_STATE, then you can find more information on the cause of the termination in the system CD1 in transaction ST22.
■If the termination type was ABORT_MESSAGE_STATE, then you can find more information on the cause of the termination on the application server CRM-DEV_CD1_00 in transaction SM21.Hi Michael,
Refer to the link below and check the procedure.
http://help.sap.com/saphelp_nwes70/helpdata/en/84/43f0d786304e19a652a8f80909a8ec/content.htm
Regards,
Arjun -
Hi all ,
Im getting the below error , actually recently i created my own custom table zstudent, later i wrote select query to fetch data from the same and dump at internal table and then bind this to the table node.
But im getting below error, even i removed the select query still same error is occuring.
Error when processing your request
What has happened?
The URL http://********00.*****b.com:8000/sap/bc/webdynpro/sap/zdemo_student/ was not called due to an error.
Note
The following error text was processed in the system IDS : Access via 'NULL' object reference not possible.
The error occurred on the application server axsids00_IDS_00 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: WDDOINIT of program /1BCWDY/YUSM2Q74A826Y0JY1I4V==CP
Method: IF_WDR_COMPONENT_DELEGATE~WD_DO_INIT of program /1BCWDY/YUSM2Q74A826Y0JY1I4V==CP
Method: DO_INIT of program CL_WDR_DELEGATING_COMPONENT===CP
Method: INIT_CONTROLLER of program CL_WDR_CONTROLLER=============CP
Method: INIT_CONTROLLER of program CL_WDR_COMPONENT==============CP
Method: INIT of program CL_WDR_CONTROLLER=============CP
Method: INIT of program CL_WDR_CLIENT_COMPONENT=======CP
Method: INIT of program CL_WDR_CLIENT_APPLICATION=====CP
Method: IF_WDR_RUNTIME~CREATE of program CL_WDR_MAIN_TASK==============CP
Method: HANDLE_REQUEST of program CL_WDR_CLIENT_ABSTRACT_HTTP===CPThanks Rama,
Acutally i accidentally commented the lo_nd_student = wd_context ....etc
this line was commented .
i have one small requirement to fetch data from local customised table and fill the same to internal table and bind that to table node.
my table node is student having attributes as name , city and number , all are of type strings.
now i created one custom table zstudent having ID - char of length 10,
name of type string
city of type string
num of type string
i have inserted records
but when i use select query to fill data from this zstudent to my internal table of type lt_student type wd_this->elements_student ,
im getting same above error. -
Dump - Access using NULL object reference is not possible!!!
Hi,
I'm using the BCS class for sending HTM format email so i use the below code for that its working,
DATA: gr_document TYPE REF TO cl_document_bcs,
gr_document = cl_document_bcs=>create_document(
i_type = 'HTM'
i_text = t_html
i_importance = '5'
i_subject = gc_subject ).
Next task is to send the image so i'm creating an another object to the same class, below code
*Image from MIME
DATA: o_mr_api TYPE REF TO if_mr_api.
DATA is_folder TYPE boole_d.
DATA l_img1 TYPE xstring.
DATA l_img2 TYPE xstring.
DATA l_loio TYPE skwf_io.
DATA: lo_document TYPE REF TO cl_document_bcs.
IF o_mr_api IS INITIAL.
o_mr_api = cl_mime_repository_api=>if_mr_api~get_api( ).
ENDIF.
CALL METHOD o_mr_api->get
EXPORTING
i_url = '/SAP/PUBLIC/ZDEMO/tick.png'
IMPORTING
e_is_folder = is_folder
e_content = l_img1
e_loio = l_loio
EXCEPTIONS
parameter_missing = 1
error_occured = 2
not_found = 3
permission_failure = 4
OTHERS = 5.
CALL METHOD o_mr_api->get
EXPORTING
i_url = '/SAP/PUBLIC/ZDEMO/Delete.png'
IMPORTING
e_is_folder = is_folder
e_content = l_img2
e_loio = l_loio
EXCEPTIONS
parameter_missing = 1
error_occured = 2
not_found = 3
permission_failure = 4
OTHERS = 5.
*Convert XSTRING to ITAB
DATA :lt_hex1 TYPE solix_tab,
lt_hex2 TYPE solix_tab,
ls_hex LIKE LINE OF lt_hex1,
lv_img1_size TYPE sood-objlen,
lv_img2_size TYPE sood-objlen.
CLEAR : lt_hex1, lt_hex2, ls_hex, lv_img1_size, lv_img2_size.
WHILE l_img1 IS NOT INITIAL.
ls_hex-line = l_img1.
APPEND ls_hex TO lt_hex1.
SHIFT l_img1 LEFT BY 255 PLACES IN BYTE MODE.
ENDWHILE.
WHILE l_img2 IS NOT INITIAL.
ls_hex-line = l_img2.
APPEND ls_hex TO lt_hex2.
SHIFT l_img2 LEFT BY 255 PLACES IN BYTE MODE.
ENDWHILE.
*Findthe Size of the image
DESCRIBE TABLE lt_hex1 LINES lv_img1_size.
DESCRIBE TABLE lt_hex2 LINES lv_img2_size.
lv_img1_size = lv_img1_size * 255.
lv_img2_size = lv_img2_size * 255.
*Attach Images
clear: lo_document.
lo_document->add_attachment(
EXPORTING
i_attachment_type = 'png' " Document Class for Attachment
i_attachment_subject = 'img1' " Attachment Title
i_attachment_size = lv_img1_size " Size of Document Content
i_att_content_hex = lt_hex1 " Content (Binary)
lo_document->add_attachment(
EXPORTING
i_attachment_type = 'png' " Document Class for Attachment
i_attachment_subject = 'img2' " Attachment Title
i_attachment_size = lv_img2_size " Size of Document Content
i_att_content_hex = lt_hex2 " Content (Binary)
but it throws the dump " Access using NULL object reference is not possible" when i tries to access for method add_attachment...
Thanks,
SivaYes there is commit work after that, Below code
gr_document = cl_document_bcs=>create_document(
i_type = 'HTM'
i_text = t_html
i_importance = '5'
i_subject = gc_subject ).
*Image from MIME
DATA: o_mr_api TYPE REF TO if_mr_api.
DATA is_folder TYPE boole_d.
DATA l_img1 TYPE xstring.
DATA l_img2 TYPE xstring.
DATA l_loio TYPE skwf_io.
DATA: lo_document TYPE REF TO cl_document_bcs.
IF o_mr_api IS INITIAL.
o_mr_api = cl_mime_repository_api=>if_mr_api~get_api( ).
ENDIF.
CALL METHOD o_mr_api->get
EXPORTING
i_url = '/SAP/PUBLIC/ZDEMO/tick.png'
IMPORTING
e_is_folder = is_folder
e_content = l_img1
e_loio = l_loio
EXCEPTIONS
parameter_missing = 1
error_occured = 2
not_found = 3
permission_failure = 4
OTHERS = 5.
CALL METHOD o_mr_api->get
EXPORTING
i_url = '/SAP/PUBLIC/ZDEMO/Delete.png'
IMPORTING
e_is_folder = is_folder
e_content = l_img2
e_loio = l_loio
EXCEPTIONS
parameter_missing = 1
error_occured = 2
not_found = 3
permission_failure = 4
OTHERS = 5.
*Convert XSTRING to ITAB
DATA :lt_hex1 TYPE solix_tab,
lt_hex2 TYPE solix_tab,
ls_hex LIKE LINE OF lt_hex1,
lv_img1_size TYPE sood-objlen,
lv_img2_size TYPE sood-objlen.
CLEAR : lt_hex1, lt_hex2, ls_hex, lv_img1_size, lv_img2_size.
WHILE l_img1 IS NOT INITIAL.
ls_hex-line = l_img1.
APPEND ls_hex TO lt_hex1.
SHIFT l_img1 LEFT BY 255 PLACES IN BYTE MODE.
ENDWHILE.
WHILE l_img2 IS NOT INITIAL.
ls_hex-line = l_img2.
APPEND ls_hex TO lt_hex2.
SHIFT l_img2 LEFT BY 255 PLACES IN BYTE MODE.
ENDWHILE.
*Findthe Size of the image
DESCRIBE TABLE lt_hex1 LINES lv_img1_size.
DESCRIBE TABLE lt_hex2 LINES lv_img2_size.
lv_img1_size = lv_img1_size * 255.
lv_img2_size = lv_img2_size * 255.
*Attach Images
create object lo_document type cl_document_bcs.
lo_document->add_attachment(
EXPORTING
i_attachment_type = 'png' " Document Class for Attachment
i_attachment_subject = 'img1' " Attachment Title
i_attachment_size = lv_img1_size " Size of Document Content
i_att_content_hex = lt_hex1 " Content (Binary)
lo_document->add_attachment(
EXPORTING
i_attachment_type = 'png' " Document Class for Attachment
i_attachment_subject = 'img2' " Attachment Title
i_attachment_size = lv_img2_size " Size of Document Content
i_att_content_hex = lt_hex2 " Content (Binary)
"Add document to send request
CALL METHOD gr_send_request->set_document( gr_document ).
TRY.
CALL METHOD gr_send_request->SET_SEND_IMMEDIATELY
EXPORTING
I_SEND_IMMEDIATELY = 'X'.
* CATCH CX_SEND_REQ_BCS INTO BCS_EXCEPTION .
**Catch exception here
ENDTRY.
DATA: LO_SENDER TYPE REF TO IF_SENDER_BCS VALUE IS INITIAL.
TRY.
LO_SENDER = CL_SAPUSER_BCS=>CREATE( SY-UNAME ). "sender is the logged in user
* Set sender to send request
gr_send_request->SET_SENDER(
EXPORTING
I_SENDER = LO_SENDER ).
* CATCH CX_ADDRESS_BCS.
****Catch exception here
ENDTRY.
"Send email
CALL METHOD gr_send_request->send(
EXPORTING
i_with_error_screen = 'X'
RECEIVING
result = gv_sent_to_all ).
IF gv_sent_to_all = 'X'.
WRITE 'Email sent!'.
ENDIF.
"Commit to send email
COMMIT WORK.
"Exception handling
CATCH cx_bcs INTO gr_bcs_exception.
WRITE:
'Error!',
'Error type:',
gr_bcs_exception->error_type.
ENDTRY. -
Access via 'NULL' object reference not possible.
hi all,
i am getting the following error in my application(getting data from 2 data base table and kept in internal table and binding that 2 internal table to two context)
in st22 i have this.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
caught in
procedure "PARSE_XML_DATA" "(METHOD)", nor was it propagated by a RAISING
clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
You attempted to use a 'NULL' object reference (points to 'nothing')
access a component.
An object reference must point to an object (an instance of a class)
before it can be used to access components.
Either the reference was never set or it was set to 'NULL' using the
CLEAR statement.
gettong error at line 52.
24 data: parseerror type ref to if_ixml_parse_error,
25 str type string, "#EC NEEDED
26 i type i, "#EC NEEDED
27 count type i,
28 index type i.
29 count = parser->num_errors( ).
30 * write: count, ' parse errors have occured:'.
31 index = 0.
32 while index < count.
33 parseerror = parser->get_error( index = index ).
34 i = parseerror->get_line( ).
35 * write: 'line: ', i.
36 i = parseerror->get_column( ).
37 * write: 'column: ', i.
38 str = parseerror->get_reason( ).
39 * write: str.
40 index = index + 1.
41 endwhile.
42 endif.
43 endif.
44
45 data l_ref_ixml_elem type ref to if_ixml_element.
46 l_ref_ixml_elem = l_ref_doc->get_root_element( ).
47
48 data l_ref_node_list type ref to if_ixml_node_list.
49 data l_ref_child type ref to if_ixml_node.
50 data nodes_index type i value 0.
51 data l_count type i.
>>>> l_ref_node_list = l_ref_ixml_elem->get_children( ).
53 while nodes_index < l_ref_node_list->get_length( ).
54 l_ref_child = l_ref_node_list->get_item( nodes_index ).
55 nodes_index = nodes_index + 1.
56 l_count = l_ref_child->num_children( ).
57 if l_count > 0.
58 me->parse_xml_subnode( subnode = l_ref_child index = 0
59 with_initial_attributes = with_initial_attributes ).
60 elseif with_initial_attributes = abap_true.
61 me->parse_xml_subnode( subnode = l_ref_child index = 0
62 with_initial_attributes = with_initial_attributes ).
pls help me
regards,
vinoth.hi thomas,
thanks for ur reply.
this is my scenario:
my context:
>contract(root node with cardinality 1:1)
>mandt_ekko( 1:1)
ebeln
>disp_ekko(o:n)
bstyp
lifnr
>disp_ekpo(o:n)
ebelp
txz01
based on ebeln fetched at run time. i have to display ekko and ekpo table details in form.i have fetched values based on that ebeln and put it in 2 internal table from ekko and ekpo table and binded that to context.but getting error.
my code:
method ONACTIONSUBMIT .
DATA lo_nd_contract TYPE REF TO if_wd_context_node.
DATA lo_nd_mandt_ekko TYPE REF TO if_wd_context_node.
DATA lo_el_mandt_ekko TYPE REF TO if_wd_context_element.
DATA ls_mandt_ekko TYPE wd_this->element_mandt_ekko.
* navigate from <CONTEXT> to <CONTRACT> via lead selection
lo_nd_contract = wd_context->get_child_node( name = wd_this->wdctx_contract ).
* navigate from <CONTRACT> to <MANDT_EKKO> via lead selection
lo_nd_mandt_ekko = lo_nd_contract->get_child_node( name = wd_this->wdctx_mandt_ekko ).
* get element via lead selection
lo_el_mandt_ekko = lo_nd_mandt_ekko->get_element( ).
* get all declared attributes
lo_el_mandt_ekko->get_static_attributes(
IMPORTING
static_attributes = ls_mandt_ekko ).
DATA lo_nd_disp_ekko TYPE REF TO if_wd_context_node.
DATA lo_el_disp_ekko TYPE REF TO if_wd_context_element.
DATA ls_disp_ekko TYPE wd_this->element_disp_ekko.
* navigate from <CONTEXT> to <CONTRACT> via lead selection
lo_nd_contract = wd_context->get_child_node( name = wd_this->wdctx_contract ).
* navigate from <CONTRACT> to <DISP_EKKO> via lead selection
lo_nd_disp_ekko = lo_nd_contract->get_child_node( name = wd_this->wdctx_disp_ekko ).
* @TODO handle not set lead selection
IF lo_nd_disp_ekko IS INITIAL.
ENDIF.
* get element via lead selection
lo_el_disp_ekko = lo_nd_disp_ekko->get_element( ).
* @TODO handle not set lead selection
IF lo_el_disp_ekko IS INITIAL.
lo_el_disp_ekko = lo_nd_disp_ekko->create_element( ).
ENDIF.
data: IT_EKKO TYPE standard table of EKKO,
lo_nd_snode_1 TYPE REF TO if_wd_context_node.
select * from EKKO into table it_EKKO WHERE EBELN = ls_mandt_ekko-EBELN.
if sy-subrc eq 0.
lo_nd_snode_1 = wd_context->path_get_node( 'CONTRACT.DISP_EKKO' ).
lo_nd_snode_1->bind_table( it_EKKO ).
endif.
DATA lo_nd_disp_ekpo TYPE REF TO if_wd_context_node.
DATA lo_el_disp_ekpo TYPE REF TO if_wd_context_element.
DATA ls_disp_ekpo TYPE wd_this->element_disp_ekpo.
* navigate from <CONTEXT> to <CONTRACT> via lead selection
lo_nd_contract = wd_context->get_child_node( name = wd_this->wdctx_contract ).
* navigate from <CONTRACT> to <DISP_EKPO> via lead selection
lo_nd_disp_ekpo = lo_nd_contract->get_child_node( name = wd_this->wdctx_disp_ekpo ).
* @TODO handle not set lead selection
IF lo_nd_disp_ekpo IS INITIAL.
ENDIF.
* get element via lead selection
lo_el_disp_ekpo = lo_nd_disp_ekpo->get_element( ).
* @TODO handle not set lead selection
IF lo_el_disp_ekpo IS INITIAL.
lo_el_disp_ekpo = lo_nd_disp_ekpo->create_element( ).
ENDIF.
data: lo_nd_snode_2 TYPE REF TO if_wd_context_node,
IT_EKPO TYPE standard table of EKPO.
select * from EKPO into table it_EKPO WHERE EBELN = ls_mandt_ekko-EBELN.
if sy-subrc eq 0.
lo_nd_snode_2 = wd_context->path_get_node( 'CONTRACT.DISP_EKPO' ).
lo_nd_snode_2->bind_table( it_EKPO ).
ENDIF.
endmethod.
when i execute got that error.any help highly appreciated.
regards,
vinoth.
Edited by: Thomas Jung on Aug 10, 2009 8:10 AM -
Hi Guru's,
i am new for WebDynpro programming.I am trying to use select-options tutorial.
System showing select options and table binding on screen when i test the application.
I have using search button to get the value which user will i/p.for that onaction method created, i have writen the code to get the values which user will input.
Method given below is of componentcontroler
method wddoinit .
data: lt_range_table type ref to data,
rt_range_table type ref to data,
read_only type abap_bool,
lt_range_table1 type ref to data.
data: lr_componentcontroller type ref to ig_componentcontroller,
l_ref_cmp_usage type ref to if_wd_component_usage.
create the used component
l_ref_cmp_usage = wd_this->wd_cpuse_select_options( ).
if l_ref_cmp_usage->has_active_component( ) is initial.
l_ref_cmp_usage->create_component( ).
endif.
wd_this->m_wd_select_options = wd_this->wd_cpifc_select_options( ).
wd_this->m_handler = wd_this->m_wd_select_options->init_selection_screen( ).
wd_this->m_handler->set_global_options(
i_display_btn_cancel = abap_false
i_display_btn_check = abap_false
i_display_btn_reset = abap_false
i_display_btn_execute = abap_false ).
lt_range_table = wd_this->m_handler->create_range_table( i_typename = 'S_CARR_ID' ).
wd_this->m_handler->add_selection_field( i_id = 'CARRID'
it_result = lt_range_table i_read_only = read_only ).
call method wd_this->m_handler->add_horizontal_divider
exporting
i_id = 'LINE'.
endmethod.
Method given below is of VIEW.
method ONACTIONSEARCH .
DATA: NODE_FLIGHTS TYPE REF TO IF_WD_CONTEXT_NODE.
DATA: RT_CARRID TYPE REF TO DATA.
DATA: ISFLIGHT TYPE TABLE OF SFLIGHT.
DATA: WSFLIGHT TYPE SFLIGHT.
FIELD-SYMBOLS: <FS_CARRID> TYPE TABLE.
Retrieve the data from the select option
RT_CARRID = WD_THIS->M_HANDLER->GET_RANGE_TABLE_OF_SEL_FIELD( I_ID = 'S_CARR_ID' ).
Assign it to a field symbol
ASSIGN RT_CARRID->* TO <FS_CARRID>.
CLEAR ISFLIGHT. REFRESH ISFLIGHT.
SELECT * INTO CORRESPONDING FIELDS OF TABLE ISFLIGHT FROM SFLIGHT
WHERE CARRID IN <FS_CARRID>.
NODE_FLIGHTS = WD_CONTEXT->GET_CHILD_NODE( NAME = `FLIGHTS` ).
NODE_FLIGHTS->BIND_ELEMENTS( ISFLIGHT ).
endmethod.
while executing appln. error is trigger on line given below
RT_CARRID = WD_THIS->M_HANDLER->GET_RANGE_TABLE_OF_SEL_FIELD( I_ID = 'S_CARR_ID' ).
Err: The following error text was processed in the system BCD : Access via 'NULL' object reference not possible.
please help me out on this issue.
Thanks and Regards
Vinayak Sapkalhi ,
The attribute M_HANDLER is an attirbute of component controller (as told by your post) and so you cannot access it as you have done it.
You will have to access it as .
WD_COMP_CONTROLLER->M_HANDLER->GET_RANGE_TABLE_OF_SEL_FIELD(I_ID = 'S_CARR_ID' ).
Try doing it.
Or else , if you have created a similar attribute in your view itself , then it is "INITIAL" and hence you are getting the dump.
You will have to assign the view attribute "M_HANDLER" with the value of your component controller attribute "M_HANDLER" ,because all the initializations are done in WDDOINIT of comp controller and on component controller atribute "M_HANDLER".
Thanks,
aditya. -
Hi all,
I am new to ActionScript and Flash, and I am getting this error: TypeError: Error #1009: Cannot access a property or method of a null object reference.
at jessicaclucas_fla::MainTimeline/stopResumescroll()
I have several different clips in one movie that have scrolling content. When I click a button to move to a different clip that doesn’t have a certain scroll, it gives me this error. I cannot figure out how to fix this. You can see the site I am working on: http://www.jessicaclucas.com. I would really appreciate some help! Thank you in advance. Here is the code:
//Import TweenMax and the plugin for the blur filter
import gs.TweenMax;
import gs.plugins.BlurFilterPlugin;
//Save the content’s and mask’s height.
//Assign your own content height here!!
var RESUMECONTENT_HEIGHT:Number = 1500;
var RESUME_HEIGHT:Number = 450;
//We want to know what was the previous y coordinate of the content (for the animation)
var oldResumeY:Number = myResumecontent.y;
//Position the content on the top left corner of the mask
myResumecontent.x = myResume.x;
myResumecontent.y = myResume.y;
//Set the mask to our content
myResumecontent.mask = myResume;
//Create a rectangle that will act as the Resumebounds to the scrollMC.
//This way the scrollMC can only be dragged along the line.
var Resumebounds:Rectangle = new Rectangle(resumescrollMC.x,resumescrollMC.y,0,450);
//We want to know when the user is Resumescrolling
var Resumescrolling:Boolean = false;
//Listen when the user is holding the mouse down on the scrollMC
resumescrollMC.addEventListener(MouseEvent.MOUSE_DOWN, startResumescroll);
//Listen when the user releases the mouse button
stage.addEventListener(MouseEvent.MOUSE_UP, stopResumescroll);
//This function is called when the user is dragging the scrollMC
function startResumescroll(e:Event):void {
//Set Resumescrolling to true
Resumescrolling = true;
//Start dragging the scrollMC
resumescrollMC.startDrag(false,Resumebounds);
//This function is called when the user stops dragging the scrollMC
function stopResumescroll(e:Event):void {
//Set Resumescrolling to false
Resumescrolling = false;
//Stop the drag
resumescrollMC.stopDrag();
//Add ENTER_FRAME to animate the scroll
addEventListener(Event.ENTER_FRAME, enterResumeHandler);
//This function is called in each frame
function enterResumeHandler(e:Event):void {
//Check if we are Resumescrolling
if (Resumescrolling == true) {
//Calculate the distance how far the scrollMC is from the top
var distance:Number = Math.round(resumescrollMC.y - Resumebounds.y);
//Calculate the percentage of the distance from the line height.
//So when the scrollMC is on top, percentage is 0 and when its
//at the bottom the percentage is 1.
var percentage:Number = distance / RESUME_HEIGHT;
//Save the old y coordinate
oldResumeY = myResumecontent.y;
//Calculate a new y target coordinate for the content.
//We subtract the mask’s height from the contentHeight.
//Otherwise the content would move too far up when we scroll down.
//Remove the subraction to see for yourself!
var targetY:Number = -((RESUMECONTENT_HEIGHT - RESUME_HEIGHT) * percentage) + myResume.y;
//We only want to animate the scroll if the old y is different from the new y.
//In our movie we animate the scroll if the difference is bigger than 5 pixels.
if (Math.abs(oldResumeY - targetY) > 5) {
//Tween the content to the new location.
//Call the function ResumetweenFinished() when the tween is complete.
TweenMax.to(myResumecontent, 0.3, {y: targetY, blurFilter:{blurX:22, blurY:22}, onComplete: ResumetweenFinished});
//This function is called when the tween is finished
function ResumetweenFinished():void {
//Tween the content back to “normal” (= remove blur)
TweenMax.to(myResumecontent, 0.3, {blurFilter:{blurX:0, blurY:0}});Hi again,
Thank you for helping. I really appreciate it! Would it be easier to say, if resumescrollMC exists, then execute these functions? I was not able to figure out the null statement from your post. Here is what I am trying (though I am not sure it is possible). I declared the var resumescrollMC, and then I tried to put pretty much the entire code into an if (resumescrollMC == true) since this code only needs to be completed when resumescrollMC is on the stage. It is not working the way I have tried, but I am assuming I am setting up the code incorrectly. Or, an if statement is not supposed to be issued to an object:
//Import TweenMax and the plugin for the blur filter
import gs.TweenMax2;
import gs.plugins.BlurFilterPlugin2;
//Save the content's and mask's height.
//Assign your own content height here!!
var RESUMECONTENT_HEIGHT:Number = 1500;
var RESUME_HEIGHT:Number = 450;
var resumescrollMC:MovieClip;
if (resumescrollMC == true) {
//We want to know what was the previous y coordinate of the content (for the animation)
var oldResumeY:Number = myResumecontent.y;
//Position the content on the top left corner of the mask
myResumecontent.x = myResume.x;
myResumecontent.y = myResume.y;
//Set the mask to our content
myResumecontent.mask = myResume;
//Create a rectangle that will act as the Resumebounds to the scrollMC.
//This way the scrollMC can only be dragged along the line.
var Resumebounds:Rectangle = new Rectangle(resumescrollMC.x,resumescrollMC.y,0,450);
//We want to know when the user is Resumescrolling
var Resumescrolling:Boolean = false;
//Listen when the user is holding the mouse down on the scrollMC
resumescrollMC.addEventListener(MouseEvent.MOUSE_DOWN, startResumescroll);
//Listen when the user releases the mouse button
stage.addEventListener(MouseEvent.MOUSE_UP, stopResumescroll);
//This function is called when the user is dragging the scrollMC
function startResumescroll(e:Event):void {
//Set Resumescrolling to true
Resumescrolling = true;
//Start dragging the scrollMC
resumescrollMC.startDrag(false,Resumebounds);
//This function is called when the user stops dragging the scrollMC
function stopResumescroll(e:Event):void {
//Set Resumescrolling to false
Resumescrolling = false;
//Stop the drag
resumescrollMC.stopDrag();
//Add ENTER_FRAME to animate the scroll
addEventListener(Event.ENTER_FRAME, enterResumeHandler);
//This function is called in each frame
function enterResumeHandler(e:Event):void {
//Check if we are Resumescrolling
if (Resumescrolling == true) {
//Calculate the distance how far the scrollMC is from the top
var distance:Number = Math.round(resumescrollMC.y - Resumebounds.y);
//Calculate the percentage of the distance from the line height.
//So when the scrollMC is on top, percentage is 0 and when its
//at the bottom the percentage is 1.
var percentage:Number = distance / RESUME_HEIGHT;
//Save the old y coordinate
oldResumeY = myResumecontent.y;
//Calculate a new y target coordinate for the content.
//We subtract the mask's height from the contentHeight.
//Otherwise the content would move too far up when we scroll down.
//Remove the subraction to see for yourself!
var targetY:Number = -((RESUMECONTENT_HEIGHT - RESUME_HEIGHT) * percentage) + myResume.y;
//We only want to animate the scroll if the old y is different from the new y.
//In our movie we animate the scroll if the difference is bigger than 5 pixels.
if (Math.abs(oldResumeY - targetY) > 5) {
//Tween the content to the new location.
//Call the function ResumetweenFinished() when the tween is complete.
TweenMax.to(myResumecontent, 0.3, {y: targetY, blurFilter:{blurX:22, blurY:22}, onComplete: ResumetweenFinished});
//This function is called when the tween is finished
function ResumetweenFinished():void {
//Tween the content back to "normal" (= remove blur)
TweenMax.to(myResumecontent, 0.3, {blurFilter:{blurX:0, blurY:0}}); -
Dear Sir,
I really need your valuable assistance i was about to finish a project but at very last moment i am stuck. Here is the explanation below...
I have two files called "holder.swf" and "slide.swf" i want to improt the "slide.swf" using this action below
var myLoader:Loader = new Loader();
var url:URLRequest = new URLRequest("slide.swf");
myLoader.load(url);
addChild(myLoader);
myLoader.x = 2;
myLoader.y = 2;
Also i have attached the flash file of "holder.swf". My concern is the moment i am calling the "slide.swf" inside the "holder.swf" it is showing the following error...
" TypeError: Error #1009: Cannot access a property or method of a null object reference.
at FC_Home_Ads_Holder_v2_fla::MainTimeline() "
Here are the files uploaded for your reference, please download this file http://www.touchpixl.com/ForumsAdobecom.zip
This error is being occured from "MainTimeline.as" file here is the code been use inside of this file below....
package FC_Home_Ads_Holder_v2_fla
import __AS3__.vec.*;
import adobe.utils.*;
import com.danehansen.*;
import com.greensock.*;
import com.greensock.easing.*;
import com.greensock.plugins.*;
import flash.accessibility.*;
import flash.desktop.*;
import flash.display.*;
import flash.errors.*;
import flash.events.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.globalization.*;
import flash.media.*;
import flash.net.*;
import flash.net.drm.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
import flash.sensors.*;
import flash.system.*;
import flash.text.*;
import flash.text.engine.*;
import flash.text.ime.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
public dynamic class MainTimeline extends flash.display.MovieClip
public function MainTimeline()
new Vector.<String>(6)[0] = "Productivity";
new Vector.<String>(6)[1] = "Leadership";
new Vector.<String>(6)[2] = "Execution";
new Vector.<String>(6)[3] = "Education";
new Vector.<String>(6)[4] = "Speed of Trust";
new Vector.<String>(6)[5] = "Sales";
super();
addFrameScript(0, this.frame1);
return;
public function init():void
var loc1:*=null;
com.greensock.plugins.TweenPlugin.activate([com.greensock.plugins.Aut oAlphaPlugin]);
loc1 = new flash.net.URLLoader(new flash.net.URLRequest(this.XML_LOC));
var loc2:*;
this.next_mc.buttonMode = loc2 = true;
this.prev_mc.buttonMode = loc2;
stage.scaleMode = flash.display.StageScaleMode.NO_SCALE;
stage.align = flash.display.StageAlign.TOP_LEFT;
loc1.addEventListener(flash.events.Event.COMPLETE, this.xmlLoaded, false, 0, true);
this.prev_mc.addEventListener(flash.events.MouseEvent.CLICK, this.minusClick, false, 0, true);
this.next_mc.addEventListener(flash.events.MouseEvent.CLICK, this.plusClick, false, 0, true);
return;
public function xmlLoaded(arg1:flash.events.Event):void
var loc1:*=null;
var loc2:*=0;
this.xmlData = new XML(arg1.target.data);
loc2 = 0;
while (loc2 < this.LABELS.length)
loc1 = new Btn(this.LABELS[loc2], loc2);
this.btnHolder_mc.addChild(loc1);
this.BTNS.push(loc1);
trace(this.LABELS[loc2]);
++loc2;
this.current = uint(this.xmlData.@firstPick);
trace("-----width-----");
trace(this.contentMask.width);
var loc3:*=this.contentMask.width / this.LABELS.length;
trace(loc3);
loc2 = 0;
while (loc2 < this.BTNS.length)
this.BTNS[loc2].width = loc3;
this.BTNS[loc2].x = loc3 * loc2;
++loc2;
this.btnHolder_mc.addEventListener(flash.events.MouseEvent.CLICK, this.numClick, false, 0, true);
this.selectMovie();
return;
public function numClick(arg1:flash.events.MouseEvent):void
this.killTimer();
this.current = arg1.target.i;
this.selectMovie();
return;
public function killTimer():void
this.timerGoing = false;
if (this.timer)
this.timer.reset();
this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
this.timer = null;
return;
public function selectMovie():void
if (this.timerGoing)
this.timer = new flash.utils.Timer(uint(this.xmlData.ad[com.danehansen.MyMath.modulo(t his.current, this.xmlData.ad.length())].@delay), 1);
this.timer.start();
this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
while (this.holder_mc.numChildren > 0)
this.holder_mc.removeChild(this.holder_mc.getChildAt(0));
var loc1:*=new flash.display.Loader();
loc1.load(new flash.net.URLRequest(this.xmlData.ad[com.danehansen.MyMath.modulo(thi s.current, this.xmlData.ad.length())].@loc));
this.holder_mc.addChild(loc1);
var loc2:*=0;
while (loc2 < this.BTNS.length)
this.BTNS[loc2].deselect();
++loc2;
this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].select();
var loc3:*=this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].x + this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].width / 2 + this.btnHolder_mc.x;
trace("addLength:" + this.xmlData.ad.length());
trace(loc3, com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length()));
com.greensock.TweenLite.to(this.indicator_mc, 0.3, {"x":loc3, "ease":com.greensock.easing.Cubic.easeOut});
loc1.contentLoaderInfo.addEventListener(flash.events.Event.COMPLETE, this.adLoaded, false, 0, true);
return;
public function adLoaded(arg1:flash.events.Event):void
var evt:flash.events.Event;
var loc1:*;
evt = arg1;
try
evt.target.content.xmlData = this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())];
catch (er:Error)
return;
public function minusClick(arg1:flash.events.MouseEvent):void
this.killTimer();
var loc1:*;
var loc2:*=((loc1 = this).current - 1);
loc1.current = loc2;
this.selectMovie();
return;
public function plusClick(arg1:flash.events.Event):void
if (arg1.type != "timer")
this.killTimer();
var loc1:*;
var loc2:*=((loc1 = this).current + 1);
loc1.current = loc2;
this.selectMovie();
trace("next");
return;
public function ENDED(arg1:flash.events.Event):void
if (arg1.type != "timer")
this.killTimer();
var loc1:*;
var loc2:*=((loc1 = this).current + 1);
loc1.current = loc2;
this.selectMovie();
trace("next");
return;
public function STARTED(arg1:flash.events.Event):void
this.killTimer();
return;
function frame1():*
this.timerGoing = true;
addEventListener("endNow", this.ENDED, false, 0, true);
addEventListener("startNow", this.STARTED, false, 0, true);
this.init();
return;
public const XML_LOC:String=stage.loaderInfo.parameters.xmlLoc ? stage.loaderInfo.parameters.xmlLoc : "home_ads.xml";
public const LABELS:__AS3__.vec.Vector.<String>=new Vector.<String>(6);
public const BTNS:__AS3__.vec.Vector.<Btn>=new Vector.<Btn>();
public const TRANSITION_TIME:Number=0.2;
public var contentMask:flash.display.MovieClip;
public var btnHolder_mc:flash.display.MovieClip;
public var holder_mc:flash.display.MovieClip;
public var indicator_mc:flash.display.MovieClip;
public var prev_mc:flash.display.MovieClip;
public var next_mc:flash.display.MovieClip;
public var current:int;
public var xmlData:XML;
public var timer:flash.utils.Timer;
public var timerGoing:Boolean;
Here is the folder uploaded on the server for you to get clear picture, please click on this link to download the entire folder. http://www.touchpixl.com/ForumsAdobecom.zip
I am not being able to resolve the issue, it needs a master to get the proper solution. I would request you to help me.
Thanks & Regards
Sanjib DasHere is the entire code of MainTimeline.as below, please correct it.
package FC_Home_Ads_Holder_v2_fla
import __AS3__.vec.*;
import adobe.utils.*;
import com.danehansen.*;
import com.greensock.*;
import com.greensock.easing.*;
import com.greensock.plugins.*;
import flash.accessibility.*;
import flash.desktop.*;
import flash.display.*;
import flash.errors.*;
import flash.events.*;
import flash.external.*;
import flash.filters.*;
import flash.geom.*;
import flash.globalization.*;
import flash.media.*;
import flash.net.*;
import flash.net.drm.*;
import flash.printing.*;
import flash.profiler.*;
import flash.sampler.*;
import flash.sensors.*;
import flash.system.*;
import flash.text.*;
import flash.text.engine.*;
import flash.text.ime.*;
import flash.ui.*;
import flash.utils.*;
import flash.xml.*;
public dynamic class MainTimeline extends flash.display.MovieClip
public function MainTimeline()
new Vector.<String>(6)[0] = "Productivity";
new Vector.<String>(6)[1] = "Leadership";
new Vector.<String>(6)[2] = "Execution";
new Vector.<String>(6)[3] = "Education";
new Vector.<String>(6)[4] = "Speed of Trust";
new Vector.<String>(6)[5] = "Sales";
super();
addFrameScript(0, this.frame1);
return;
public function init():void
var loc1:*=null;
com.greensock.plugins.TweenPlugin.activate([com.greensock.plugins.AutoAlphaPlugin]);
loc1 = new flash.net.URLLoader(new flash.net.URLRequest(this.XML_LOC));
var loc2:*;
this.next_mc.buttonMode = loc2 = true;
this.prev_mc.buttonMode = loc2 = true;
stage.scaleMode = flash.display.StageScaleMode.NO_SCALE;
stage.align = flash.display.StageAlign.TOP_LEFT;
loc1.addEventListener(flash.events.Event.COMPLETE, this.xmlLoaded, false, 0, true);
this.prev_mc.addEventListener(flash.events.MouseEvent.CLICK, this.minusClick, false, 0, true);
this.next_mc.addEventListener(flash.events.MouseEvent.CLICK, this.plusClick, false, 0, true);
return;
public function xmlLoaded(arg1:flash.events.Event):void
var loc1:*=null;
var loc2:*=0;
this.xmlData = new XML(arg1.target.data);
loc2 = 0;
while (loc2 < this.LABELS.length)
loc1 = new Btn(this.LABELS[loc2], loc2);
this.btnHolder_mc.addChild(loc1);
this.BTNS.push(loc1);
trace(this.LABELS[loc2]);
++loc2;
this.current = uint(this.xmlData.@firstPick);
trace("-----width-----");
trace(this.contentMask.width);
var loc3:*=this.contentMask.width / this.LABELS.length;
trace(loc3);
loc2 = 0;
while (loc2 < this.BTNS.length)
this.BTNS[loc2].width = loc3;
this.BTNS[loc2].x = loc3 * loc2;
++loc2;
this.btnHolder_mc.addEventListener(flash.events.MouseEvent.CLICK, this.numClick, false, 0, true);
this.selectMovie();
return;
public function numClick(arg1:flash.events.MouseEvent):void
this.killTimer();
this.current = arg1.target.i;
this.selectMovie();
return;
public function killTimer():void
this.timerGoing = false;
if (this.timer)
this.timer.reset();
this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
this.timer = null;
return;
public function selectMovie():void
if (this.timerGoing)
this.timer = new flash.utils.Timer(uint(this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].@delay), 1);
this.timer.start();
this.timer.addEventListener(flash.events.TimerEvent.TIMER, this.plusClick, false, 0, true);
while (this.holder_mc.numChildren > 0)
this.holder_mc.removeChild(this.holder_mc.getChildAt(0));
var loc1:*=new flash.display.Loader();
loc1.load(new flash.net.URLRequest(this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].@loc));
this.holder_mc.addChild(loc1);
var loc2:*=0;
while (loc2 < this.BTNS.length)
this.BTNS[loc2].deselect();
++loc2;
this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].select();
var loc3:*=this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].x + this.BTNS[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())].width / 2 + this.btnHolder_mc.x;
trace("addLength:" + this.xmlData.ad.length());
trace(loc3, com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length()));
com.greensock.TweenLite.to(this.indicator_mc, 0.3, {"x":loc3, "ease":com.greensock.easing.Cubic.easeOut});
loc1.contentLoaderInfo.addEventListener(flash.events.Event.COMPLETE, this.adLoaded, false, 0, true);
return;
public function adLoaded(arg1:flash.events.Event):void
var evt:flash.events.Event;
var loc1:*;
evt = arg1;
try
evt.target.content.xmlData = this.xmlData.ad[com.danehansen.MyMath.modulo(this.current, this.xmlData.ad.length())];
catch (er:Error)
return;
public function minusClick(arg1:flash.events.MouseEvent):void
this.killTimer();
var loc1:*;
var loc2:*=((loc1 = this).current - 1);
loc1.current = loc2;
this.selectMovie();
return;
public function plusClick(arg1:flash.events.Event):void
if (arg1.type != "timer")
this.killTimer();
var loc1:*;
var loc2:*=((loc1 = this).current + 1);
loc1.current = loc2;
this.selectMovie();
trace("next");
return;
public function ENDED(arg1:flash.events.Event):void
if (arg1.type != "timer")
this.killTimer();
var loc1:*;
var loc2:*=((loc1 = this).current + 1);
loc1.current = loc2;
this.selectMovie();
trace("next");
return;
public function STARTED(arg1:flash.events.Event):void
this.killTimer();
return;
function frame1():*
this.timerGoing = true;
addEventListener("endNow", this.ENDED, false, 0, true);
addEventListener("startNow", this.STARTED, false, 0, true);
this.init();
return;
public const XML_LOC:String=stage.loaderInfo.parameters.xmlLoc ? stage.loaderInfo.parameters.xmlLoc : "home_ads.xml";
public const LABELS:__AS3__.vec.Vector.<String>=new Vector.<String>(6);
public const BTNS:__AS3__.vec.Vector.<Btn>=new Vector.<Btn>();
public const TRANSITION_TIME:Number=0.2;
public var contentMask:flash.display.MovieClip;
public var btnHolder_mc:flash.display.MovieClip;
public var holder_mc:flash.display.MovieClip;
public var indicator_mc:flash.display.MovieClip;
public var prev_mc:flash.display.MovieClip;
public var next_mc:flash.display.MovieClip;
public var current:int;
public var xmlData:XML;
public var timer:flash.utils.Timer;
public var timerGoing:Boolean; -
Access vis NULL object reference.
Hi experts,
I have a component having context->node1->usernr
usernr is one of the attributes in node1.
node1 has cardinality 0..n
I have two views, view1 and view2 in the window.
both the view contexts have mapping with node1 of component controller context.
View1 has a table that shows usernr as a column and view2 has an inputfield, the value of which is bound to usernr.
On clicking a button in view1, I am creating an element of node1 and binding it to the node. this os working fine. Also I am firing the outplug of view1 which is connected to inplug of view2.
I debugged the view2 and it is going upto the HANDLEIN_view2_inputplug
Then I just get this dump "Access via 'NULL' object reference not possible."
Error in the ABAP Application Program
The current ABAP program "CL_WDR_VIEW_ELEMENT_ADAPTER===CP" had to be terminated because it has come across a statement that unfortunately cannot be executed.
Error analysis
You attempted to use a 'NULL' object reference (points to 'nothing') access a component (variable: " ").
An object reference must point to an object (an instance of a class) before it can be used to access components.
Either the reference was never set or it was set to 'NULL' using the CLEAR statement.
Information on where terminated
Termination occurred in the ABAP program "CL_WDR_VIEW_ELEMENT_ADAPTER===CP" - in "GET_ATTRIBUTE_EXTERNAL".
The main program was "SAPMHTTP ".
In the source code you have the termination point in line 10 of the (Include) program "CL_WDR_VIEW_ELEMENT_ADAPTER===CM00Q".
Source Code Extract
Line SourceCde
1 method get_attribute_external.
2
3 data data_container type ref to cl_wdr_data_container.
4 data attribute type wdr_attribute_pointer.
5 data client_component type ref to cl_wdr_client_component.
6
7 attribute-attribute_name = i_binding->attribute_name.
8 attribute-element ?= get_bound_element( i_binding ).
9 client_component ?= attribute-element->node->controller->component->data_container_superio
11 data_container = client_component->data_container.
12
13 e_value = data_container->get_and_format( attribute = attribute ).
14
15 endmethod.
Error is at line 9
Chosen variables
Name
Val.
No. 21 Ty. METHOD
Name CL_WDR_VIEW_ELEMENT_ADAPTER=>GET_ATTRIBUTE_EXTERNAL
I_BINDING
0000000C
D0000002
E_VALUE
SY-REPID
CL_WDR_VIEW_ELEMENT_ADAPTER===CP
0000000000000000000000000000000000000000
0000000000000000000000000000000000000000
4455455544554444445544455453334522222222
3CF742F6957F5C5D5E4F1410452DDD3000000000
%_DUMMY$$
0000
0000
2222
0000
ATTRIBUTE-ATTRIBUTE_NAME
USERNR
000000
000000
554545
5352E2
I_BINDING->ATTRIBUTE_NAME
USERNR
000000
=======================================================================
The thing that is worrying me is that nothing like this was happening at all earlier. I tested the application quite a few number of times and then suddenly this started. Since then it has not stopped.
I am unable to understand the reason for this. Pl help.
Regards,
Reema.
Edited by: Reema Shahbazkar on Jun 12, 2008 3:28 AMHey Reema,
Were you able to resolve this error. I am facing exactly the same issue currently . My primary data container nodes belong to the component controller. I did verify the same for any change in the cardinality and dont see anythign thats changed which could be impacting my views. In any case, I had kept the cardinality as 0...n initially to be safe since there cud be scenarios where no values can exist for the same at runtime.
Please do let me know how you happened to resolve this.
Thanks,
Puja. -
Access via 'NULL' object reference not possible Error in WD application execution
Experts,
I am getting following error for web dynpro application intermittently, please find following error log:
What happened?
Error in the ABAP Application Program
The current ABAP program "CL_SALV_WD_C_TABLE_V_TABLE====CP" had to be
terminated because it has
come across a statement that unfortunately cannot be executed.
Error analysis
An exception occurred that is explained in detail below.
The exception, which is assigned to class 'CX_SY_REF_IS_INITIAL', was not
caught in
procedure "IF_SALV_WD_COMP_TABLE_DATA_MAP~MAP_TO_RESULT_CHANGES" "(METHOD)",
nor was it propagated by a RAISING clause.
Since the caller of the procedure could not have anticipated that the
exception would occur, the current program is terminated.
The reason for the exception is:
You attempted to use a 'NULL' object reference (points to 'nothing')
access a component.
An object reference must point to an object (an instance of a class)
before it can be used to access components.
Either the reference was never set or it was set to 'NULL' using the
CLEAR statement.
Information on where terminated
Termination occurred in the ABAP program "CL_SALV_WD_C_TABLE_V_TABLE====CP" -
in "IF_SALV_WD_COMP_TABLE_DATA_MAP~MAP_TO_RESULT_CHANGES".
The main program was "SAPMHTTP ".
In the source code you have the termination point in line 168
of the (Include) program "CL_SALV_WD_C_TABLE_V_TABLE====CM080".
The termination is caused because exception "CX_SY_REF_IS_INITIAL" occurred in
procedure "IF_SALV_WD_COMP_TABLE_DATA_MAP~MAP_TO_RESULT_CHANGES" "(METHOD)",
but it was neither handled locally nor declared
in the RAISING clause of its signature.
The procedure is in program "CL_SALV_WD_C_TABLE_V_TABLE====CP "; its source
code begins in line
1 of the (Include program "CL_SALV_WD_C_TABLE_V_TABLE====CM080 ".
Line SourceCde
138
139 "Set new value to result data
140 if ls_changelist-r_old_value is not bound.
141 "insert new table line
142 lr_component->r_result_data->if_salv_bs_r_data_table_edit~insert_table_line(
143 index = l_result_data_index ).
144 else.
145 "Modify existing table line
146 lr_component->r_result_data->if_salv_bs_r_data_table_edit~set_table_line(
147 index = l_result_data_index
148 data_line = <ls_table> ).
149 endif.
150 else.
151 "A single attribute value has to be updated
152
153 "Get context element from output data node
154 data lr_element type ref to if_wd_context_element.
155
156 "Retrieve the element to update from the data output node
157 if l_mass_edit_row_inserted = abap_true.
158 "The Element only exists virtually due to the mass edit mode.
159 lr_element = lr_node->get_element( l_mass_edit_virtual_index ).
160 l_mass_edit_row_inserted = abap_false.
161 else.
162 "The element already exists in the data output node.
163 lr_element = lr_node->get_element( ls_changelist-index ).
164 endif.
165
166 "Determine if the cell to be updated is set to null (Nullable)
167 data l_is_null type abap_bool.
>>>>> l_is_null = lr_element->is_attribute_null( ls_changelist-attribute ).
169
170 "Update result data with change
171 if <l_value> is assigned.
172 "update ResultData with cell value
173 lr_component->r_result_data->if_salv_bs_r_data_table_edit~set_table_cell(
174 index = l_result_data_index
175 attribute = ls_changelist-attribute
176 data_cell = <l_value>
177 is_null = l_is_null ).
178 else.
179 "Update result data without any updated cell value
180 lr_component->r_result_data->if_salv_bs_r_data_table_edit~set_table_cell(
181 index = l_result_data_index
182 attribute = ls_changelist-attribute
183 is_null = l_is_null ).
184 endif.
Please help us on what could be the reason behind this?
Thanks,
MadanHi Madan,
It seems that, there are user settings saved and the attribute in the layout settings is not available with current changes.
try to delete the user settings if any.
Please find my answer in the below link
Reset user settings in WDA
Hope this helps you.
Regards,
Rama -
Runtime error in WebDynpro - Access via 'NULL' object reference not possibl
Hi,
Structure of the CONTEXT in the VIEW::
WDSCREEN1
--> IMPORTING
--> S_KUNNR <- its a select option
--> EXPORTING
--> T_REPORT <- Which is table to hold the output data (with 4 fields)
In the context area i have root node (WDSCREEN1) and Sub nodes are IMPORTING and EXPORTING and child nodes as shown above. When i am referring them everything is fine except T_REPORT.
* Declaration
DATA: node TYPE REF TO if_wd_context_node,
node_exporting TYPE REF TO if_wd_context_node,
node_importing TYPE REF TO if_wd_context_node,
node_report TYPE REF TO if_wd_context_node,
node = wd_context->get_child_node( wd_this->wdctx_wdscreeb1 ).
node_exporting = node->get_child_node( wd_this->wdctx_exporting ).
node_importing = node->get_child_node( wd_this->wdctx_importing ).
* Bind the data to the context
node_report = node_exporting->get_child_node( name = 'T_REPORT` ).
node_report->bind_elements( lt_report ).
Its giving run time error 'Access via 'NULL' object reference not possible. ' when it comes to ' node_report->bind_elements( lt_report ).' I checked the content while debugging and found that it was initial. Not sure why Node_report is initial. all others have data.
node ->
node_exporting ->
node_importing ->
node_report ->http://wiki.sdn.sap.com/wiki/display/EP/PointersforTroubleshootingPortalRuntime+Errors
Hope this helps.
-Veer -
Error : Access not possible using "null" objects reference
Hello.
i am working with a zbapi.
i called a external email program in this bapi,everything is working fine over here.
In webdynpro java they mapped my bapi and starting working from there.
every functionality is working fine but regarding this email stuff it is showing an error as access not possible using null objects reference.
where could be the possible error.
is it in webdynpro or in abap side.Raghu,
You are right. When it comes from the WD Java, may be you are not passing any value at all. You can trace it by these ways.
1. Check it using SE37, make sure everyhting is fine.
2. Print all the values that you are passing to the RFC in the execute RFC method().
3. using ST05 transaction in R/3, enable RFC and SQL trace, check what is passing in between web dynpro and R/3.
Moreover paste your error message here.
Thanks,
Raj. -
IC WEBCLIENT: Access via 'NULL' object reference not possible
Hi,
Iam working in ABAP, and learning CRM ABAP on CRM5.0 IDES Demo system I was trying to create a new WebIC by copying one view from CRM_IC to ZCRM_IC bsp application. Following are the steps I following according to Cook book documentation.
1. I copied BuPaDisplayCustomer view and controller from CRM_IC to ZCRM_IC from
BSP_WD_WORKBENCH by selecting CRM_IC and runtime profile = 'DEFAULT'.
2. Created a runtime profile from SPRO->CRM->IC Webclient->Customer specific modifications->Define
runtime profile.
3. Copied the 'DEFAULT' runtime profile to my new profile 'Z_COOKBOOK'. Assign 'ZCRM_IC' by
clicking on 'Controller and substitues'.
BSP Replaced Controller BSP ReplacmentController
CRM_IC BuPaMoreContactView Z_CRM_IC BuPaMoreContactView
4. Define IC Webclient profile:
SPRO->CRM->IC Webclient->Define IC Webclient profile->Copy the DEFAULT profile and assign it to
'Z_COOKBOOK',
5. Assigned the Webclient profile to the user from t-code 'PPOMW'. Selected 'USER' from the
existing 'Position' and Goto->Detail object->Enhanced obj descrption.Selected IC webclient from the
list and created Infotype assigned Webclient profile 'Z_COOKBOOK'.
6. Execute the ZCRM_IC from SE80 by rightclick and Test. Here is my problem,Iam receiving the
following error in the webpage.
The following error text was processed in the system CR7 :
Access via 'NULL' object reference not possible.
The error occurred on the application server CR7_01 and in the work process 0 .
The termination type was: RABAX_STATE
The ABAP call stack was:
Method: SET_MODELS of program CL_CRM_IC_BUPADISPCUSTOME=====CP
Method: SET_MODELS of program CL_CRM_IC_BUPADISPCUSTOME=====CP
Method: SET_MODELS of program CL_CRM_IC_BUPADISPCUSTOME_IMPLCP
Method: DO_REQUEST of program CL_BSP_WD_VIEW_CONTROLLER=====CP
Method: DO_REQUEST of program CL_BSP_CTRL_ADAPTER===========CP
Method: ON_REQUEST of program CL_BSP_RUNTIME================CP
Method: IF_HTTP_EXTENSION~HANDLE_REQUEST of program CL_HTTP_EXT_BSP===============CP
Method: EXECUTE_REQUEST_FROM_MEMORY of program CL_HTTP_SERVER================CP
Function: HTTP_DISPATCH_REQUEST of program SAPLHTTP_RUNTIME
Module: %_HTTP_START of program SAPMHTTP
I check the CRM services and all are active, using IE8 web browser. I just copied the view and controller
from CRM_IC into Custom BSP application i.e., ZCRM_IC.
Above error is occuring even If i run the standard CRM_IC BSP application and select one simple view.
from SE80.
Not sure whether any additional configuration or any special roles to be assigned to the Webclient profile.
Thanks,
Venn.hello swapna,
we are facing the same error while accessing the leave request link, all jco are testing fine, i checked backend connection and its fine, please tel me how did u resolved that issue,
Thanks in advance.....
ajay -
Null object reference error in Axis Renderer in Case of Stacked Column Chart
We are trying to display a Flex Column chart (when stacked ) with single value in DataProvider but we used to get following error:
TypeError: Error #1009: Cannot access a property or method of a null object reference.
at mx.charts::AxisRenderer/calcStaggeredSpacing()[C:\Work\flex\dmv_automation\projects\datav isualisation\src\mx\charts\AxisRenderer.as:2195]
at mx.charts::AxisRenderer/calcRotationAndSpacing()[C:\Work\flex\dmv_automation\projects\dat avisualisation\src\mx\charts\AxisRenderer.as:1586]
at mx.charts::AxisRenderer/adjustGutters()[C:\Work\flex\dmv_automation\projects\datavisualis ation\src\mx\charts\AxisRenderer.as:1326]
at mx.charts::AxisRenderer/set gutters()[C:\Work\flex\dmv_automation\projects\datavisualisation\src\mx\charts\AxisRender er.as:798]
at mx.charts.chartClasses::CartesianChart/updateAxisLayout()[C:\Work\flex\dmv_automation\pro jects\datavisualisation\src\mx\charts\chartClasses\CartesianChart.as:2028]
at mx.charts.chartClasses::CartesianChart/updateDisplayList()[C:\Work\flex\dmv_automation\pr ojects\datavisualisation\src\mx\charts\chartClasses\CartesianChart.as:1355]
at mx.core::UIComponent/validateDisplayList()[C:\autobuild\galaga\frameworks\projects\framew ork\src\mx\core\UIComponent.as:6351]
at mx.managers::LayoutManager/validateDisplayList()[C:\autobuild\galaga\frameworks\projects\ framework\src\mx\managers\LayoutManager.as:622]
at mx.managers::LayoutManager/doPhasedInstantiation()[C:\autobuild\galaga\frameworks\project s\framework\src\mx\managers\LayoutManager.as:695]
at Function/http://adobe.com/AS3/2006/builtin::apply()
at mx.core::UIComponent/callLaterDispatcher2()[C:\autobuild\galaga\frameworks\projects\frame work\src\mx\core\UIComponent.as:8733]
at mx.core::UIComponent/callLaterDispatcher()[C:\autobuild\galaga\frameworks\projects\framew ork\src\mx\core\UIComponent.as:8673]
at flash.utils::Timer/_timerDispatch()
at flash.utils::Timer/tick()
We have invested so much effort and done lots of googling and also followed the work around given on https://bugs.adobe.com/jira/browse/FLEXDMV-2275 but till now, we didn't get any solution.I solved the issue by getting rid of the creationCompleteHandler event handlers for the KPI charts. But, since I am just days into flex development, I would be indebted if someone could explain to me why that was creating problems.
-
RFC to HTTP Interface - Access using NULL object reference is not possible
Hi All,
I am working on a Interface RFC to HTTP where in I am sending the data to a third party system.
Using PI 7.3 and Adapter type XI to send this data.
I am getitng an error Short dump occured when executing message in qRFC queue <Queuename>: Date/time 02.12.2011 08:44:57, user XXXXX, runtime error: Access using NULL object reference is not possible.
<SAP:Code area="INTERNAL">QRFC_SYSTEM_DUMP</SAP:Code>
I am entering the parameters such as target host,service number,path correctly with addrseing type as URL.
The message is failing in the call adapter step with the above error.
There are no messages stuck in SMQ2 as well.
Now on the other if I use the adapter type HTTP_AAE the messages is getting successfully delivered with the same parameters mentioned above.But as we know it is a plain adapter and will not have the SOAP envelope.
We would want to send the data using the XI adapter.
Any idea as why this issue is happening?
Helpful answers will be rewarded points.
Thanks & Regards,
RKHi,
please go through below threads,
Error for all the interfaces
Access via NULL object reference not possible., error key: RFC_ERROR_SYSTEM
hope it will help you
regards,
ganesh
Maybe you are looking for
-
File Error: Unknown File when trying to render a Motion Lower third
I'm getting this: "File Error: Unknown File" when trying to render a Lower third made in the Motion tab. I'm using FCP 6.0.6 and haven't had any issues with this before. It seems to work fine if there is just text, but as soon as I apply any effect,
-
I Want to use the standard exchange rate type M but want to use my conversion rate for exchange rate M is it better to define my own exchange rate type as I need to define the my conversion rate , ratios etc Pls suggest me Thanks priya
-
Disable resource account via Workflow
Hello I created a transition in the Update User workflow to disable a resource account if a field is indicated in the admin tabbed user form. This activity works but all resource accounts (email, AD) are being disabled. Only email needs to be disable
-
Regarding Doc, for a New Implementation
Hello, Will you pl, help me in getting complete documentation (Std / Template)for all stages of ASAP methodology, for a new module. If you provide at least URL, it will be of great help.
-
Hey guys.. Now I'm angry... After much problems with kernel panic, freezing and chrashing of programs after installing Mountain Lion, I decided to format it and reinstall ML. So, this is somthing I have done a coupple of times, so I just held in alt