Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Java Development


Thank you for visiting the BlackBerry Support Community Forums.

BlackBerry will be closing the BlackBerry Support Community Forums Device Forums on April 1st (Developers, see below)

BlackBerry remains committed to providing excellent customer support to our customers. We are delighted to direct you to the CrackBerry Forums, a well-established and thorough support channel, for continued BlackBerry support. Please visit http://forums.crackberry.com or http://crackberry.com/ask. You can also continue to visit BlackBerry Support or the BlackBerry Knowledge Base for official support options available for your BlackBerry Smartphone.

"When we launched CrackBerry.com 10 years ago, we set out to make it a fun and useful destination where BlackBerry Smartphone owners could share their excitement and learn to unleash the full potential of their BlackBerry. A decade later, the CrackBerry community is as active and passionate as ever and I know our knowledgeable members and volunteers will be excited to welcome and assist more BlackBerry owners with their questions."

- Kevin Michaluk, Founder, CrackBerry.com

Developers, for more information about the BlackBerry Developer Community please review Join the Conversation on the BlackBerry Developer Community Forums found on Inside BlackBerry.


Reply
Regular Contributor
Posts: 51
Registered: ‎01-13-2011
My Device: 9800
My Carrier: vodaphone

Re: BrowserField2 : javascript redirect (window.location.href) issue

still i am getting elegalstate exception
Vishal Lakhmapurkar
Regular Contributor
Posts: 51
Registered: ‎01-13-2011
My Device: 9800
My Carrier: vodaphone

Re: BrowserField2 : javascript redirect (window.location.href) issue

 

 i have a browserfeld and a bitmap field ,

Prestored image will display on bitmap field until the page load, after page load replace bitmapfiled with browserfield and load the page properly, i over ride following methods :

document loaded,created,eror  etc....

My problem is:

1:when i click in inner page link like a page contains a link that i found i gives me elegal state or uncaught exception (:--inner link redirect page on another link ).

2: i used solution above link write _bf.setFocus() in invokeand wait method. but after it page does first page will load properly but inner page will load .

 

here my codeof my protocol controller

class MyBrowserFieldListener extends BrowserFieldListener{

            public void documentLoaded(BrowserField browserField, Document     document) throws Exception {
                final int kpiIdx = selKpiIdx;
                super.documentLoaded(browserField, document);

                // Logger.debug("Request url = " + browserField.getDocumentUrl());
                // Logger.debug("Request url2 = " + _browserField.getDocumentUrl());
               
                // process only document loaded for last request
                if(_bf2 == browserField){
                   
                   
                    //isTakingScreenShot = true;
                   
                    /*
                    String url = browserField.getDocumentUrl();
                    if(url == null || url.indexOf("localhost") >= 0){
                        return;
                    }
                    */
                   
                    Logger.debug("----------- Documented loaded --------");
                    // Dialog.alert("Documented loaded");
                     if(!bfVisible && isInternetActive){
                         //_bf2.removeListener(this);
                         Logger.debug("----------- Documented loaded 2--------");
                         // bfm.setFocus();
                         /*
                         bfm.deleteAll();
                         Logger.debug("----------- Documented loaded 3--------");
                         bfm.add(_bf2);
                         */
                        
                        
                         // _browserField.removeListener(this);
                         UiApplication.getUiApplication().invokeAndWait(new Runnable() {
                            public void run() {
                                //Dialog.alert("loaded");
                                bfm.deleteAll();
                                 bfm.add(_bf2);
                            }
                        });
                        
                         bfVisible = true;
                         Logger.debug("----------- Documented loaded 4--------");
                     }
                    
                     try{
                         originalCw = _bf2.getContentWidth();
                        
                         Logger.debug("loaded originalCw content width  = " + originalCw);
                         //  Logger.debug("loaded content width  = " + originalCw);
                         // Logger.debug("============ content width = " + browserField.getContentWidth());
                         // Logger.debug("============ pre width = " + browserField.getPreferredWidth());
                         // Logger.debug("============ bf virtual width = " + browserField.getVirtualWidth());
                         // Logger.debug("============ bf visible width = " + browserField.getVisibleWidth());
                         // Logger.debug("============ bf width = " + browserField.getWidth());
                         // Logger.debug("============ display width = " + Display.getWidth());
                        
                        
                        
                         // scaling
                         if(originalCw > sw){
                             // float scaleFactor = ((float)sw)/originalCw;
                             // currScale = scaleFactor;
                             // minScale = scaleFactor;
                             float scaleFactor = 0.1F;
                             if(isOS6){
                                 scaleFactor = ((float)sw)/originalCw;
                             }
                            
                            synchronized (UiApplication.getEventLock()){
                                 _bf2.setZoomScale(scaleFactor);
                                 _bf2.invalidate();
                                 // updateStatus(2);
                                doPaint();
                                invalidate();
                            }
                         }
                     }catch(Exception e){
                         Logger.error("scaling", e);
                     }                       
                
                     Logger.debug("----------- Documented loaded 5--------");
                    
                     // remove activity indicator
                     try{
                         //spinnerView.cancelled();
                         //header.delete(spinnerView);
                         //header.add(favBitmap);
                     }catch(Exception e){}
                    
                     boolean isFocus = dataBitmapField.isFocus();
                     // enable data grid button
                     if(!isFocus){
                         dataBitmapField.setBitmap(Bitmap.getBitmapResource("img/data.png"));   
                     }
                     // dataBitmapField.setEnabled(true);
                     if(isInternetActive){
                         isWebDataEnable = true;
                     }
                    
                     Logger.debug("----------- Documented loaded 6--------");
                    
                    
                     // capture the image
                     if(pageCount == 0){
                          try {
                             Thread.sleep(2000);
                            Backlight.setTimeout(255);
                         } catch (Exception e) {
                             Logger.error("Backlight needed", e);
                         }
                         if(UiApplication.getUiApplication().getActiveScreen() != KpiWebView.this) return;
                        
                         Logger.debug("----------- Documented loaded 7--------");
                        
                        // synchronized (UiApplication.getEventLock()){
                         UiApplication.getUiApplication().invokeLater(new Runnable() {
                            public void run() {
                                if(kpiIdx == selKpiIdx) {
                                    Logger.debug("----------- Documented loaded 8--------");
                                   if(!_bf2.isFocus()){
                                       captureImg.storeKPIImage(_bf2, selKpi.kpiId);
                                   }
                                 }  
                            }
                        });
                     }
                    
                     Logger.debug("----------- Documented loaded 9--------");
                    
                     // menuViewData = true;                    
                     pageCount++;
                     // linkVec.addElement(_browserField.getDocumentUrl());
                    
                     //isTakingScreenShot = false;
                }
                
            }
           
            public void documentError(BrowserField browserField,  Document document) throws Exception{
                Logger.debug("------- documentError : " + document.toString());
                super.documentError(browserField, document);
            }
            public void documentCreated(BrowserField browserField,
                    ScriptEngine scriptEngine, Document document)
                    throws Exception {
                super.documentCreated(browserField, scriptEngine, document);
                    String baseURL = "";
                  
                      
                       UiApplication.getUiApplication().invokeAndWait(new Runnable() {
                        public void run() {
                            if(bfVisible){
                                _bf2.setFocus();   
                                Logger.debug("setfocus on browser end");
                               
                            }
                         
                        }
                    });                      
                      
                    //}
                      
                }
               
           
           
        }

 

Vishal Lakhmapurkar
Highlighted
Regular Contributor
Posts: 51
Registered: ‎01-13-2011
My Device: 9800
My Carrier: vodaphone

Re: BrowserField2 : javascript redirect (window.location.href) issue

I think no one in this forum to solve this type of problem. 

 

Vishal Lakhmapurkar
Regular Contributor
Posts: 51
Registered: ‎01-13-2011
My Device: 9800
My Carrier: vodaphone

Re: BrowserField2 : javascript redirect (window.location.href) issue

Still waiting for response from any body Man Sad

Vishal Lakhmapurkar