Tuesday, 3 July 2018

ADF : SkipValidation

ADF : SkipValidation


http://andrejusb.blogspot.com/2012/12/skip-validation-for-adf-required-tabs.html




1. Set Immediate = true property for both tabs:
2. Open page definition file and select root tag, Go to Properties window and search for SkipValidation property. Set SkipValidation to true:

Monday, 26 March 2018

ADF : Best tutorial links

ADF: How to check whether particular View Object’s data is modified or not

ADF: How to check whether particular View Object’s data is modified or not?

 Create following method in ViewImpl class of your view object.

public boolean isdirty()
{
boolean flag=false;
DepartmentsViewRowImpl crow =(DepartmentsViewRowImpl)this.getCurrentRow();
EntityImpl entity= crow.getDepartments();
byte state=entity.getEntityState();
if(state!=entity.STATUS_UNMODIFIED)
{
flag=true;
}
return flag;
}

 

http://adftutorials.com/keyword/custom-error-message

 

ADF: Custom Error Handler in Model layer

ADF: Custom Error Handler in Model layer


https://docs.oracle.com/cd/E14571_01/web.1111/b31974/web_adv.htm#ADFFD1398

http://adftutorials.com/adf-custom-error-handler-to-display-custom-message-to-user.html

In Model Project
------------------

Step1 : custom error handler that extends the DCErrorHandlerImpl class

    eg:
        public final class MyErrorMessageHandler extends DCErrorHandlerImpl {

                public String getDisplayMessage(BindingContext ctx, Exception ex) { 
                        String message=""; 
                         
                        if (ex instanceof oracle.jbo.ValidationException) { 

                                String msg = ex.getMessage(); 
                         
                                int i=msg.indexOf("JBO-25013");//When JBO-25013 Too many object match promary key exception occur. 
                         
                                if(i>0) 
                         
                                { 
                                     
                                    message= "Duplicate Employee Id Found."; 
                                     
                                } 
                         
                                message= getDisplayMessage(ctx,ex); 
                         
                        } 
                         
                        else             
                         
                        { 
                         
                            message=getDisplayMessage(ctx,ex); 
                         
                        } 
                         
                        return message;            
                         
                }                                                                                                                                                                 
 

In View Project
------------------

Step2 :  Register MyCustomErrorHandler class into Databinding.cpx file.


    <?xml version="1.0" encoding="UTF-8" ?> 
   
    <Application xmlns="http://xmlns.oracle.com/adfm/application" 
     
    version="11.1.1.60.13" id="DataBindings" SeparateXMLFiles="false" 
     
    Package="com.in.adftutorials.view" ClientType="Generic" 
     
    ErrorHandlerClass="com.in.adftutorials.view.MyCustomErrorHandler">

Wednesday, 28 June 2017

ADF : ADF Table not displaying rows 1st time.

ADF : ADF Table not displaying rows 1st time.


If we are using <af:quickQuery component against VO (ADF table), always we should mark "Query Automatically" checked, other wise rows will not be displayed 1st time when we land to the page.

Sunday, 23 April 2017

JavaScript: Read WebCam and take snap shot

JavaScript: Read WebCam and take snap shot


<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>

</head>
<body>
<video id="video"></video>
<canvas id="canvas"></canvas><br>
<button onclick="snap();">Snap</button>
<script type="text/javascript">
alert("coming11");
var video = document.getElementById('video');
var canvas = document.getElementById('canvas');
var context = canvas.getContext('2d');
alert("coming22");
navigator.getUserMedia = navigator.getUserMedia ||
navigator.webkidGetUserMedia ||
navigator.monzGetUserMedia ||
navigator.oGetUserMedia ||
navigator.msGetUserMedia;
alert("coming3");
if(navigator.getUserMedia){
navigator.getUserMedia({video:true}, streamWebCam, throwError);
}

function streamWebCam (stream) {
video.src = wendow.URL.createObjectURL(stream);
video.play();
}

function throwError (e){
alert(e.name);
}

function snap(){
canvas.width=video.clientWidth;
canvas.height=video.height;
canvas.drawImage(video,0,0);
}
</script>
</body>
</html>

https://www.youtube.com/watch?v=K_NP_a78Jpk

Webcam integrating with java code - http://webcam-capture.sarxos.pl/