This is simple way to display your List values in VF page. It may help to you. **Controller :** Service_Instance__c ServiceIns { get; set; } // getter setter initialize public void gennumber2(){ List<Service_Instance__c> serv = [SELECT Id, Name, Account__c, ... FROM Service_Instance__c WHERE USI__c =:usi1 limit 1]; // Query the values if(serv.size() > 0){ // Check whether list is empty or not ServiceIns = serv[0]; // Assign get set variable value } else { ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.Warning, 'The USI number is invalid')); // else show the error message } } **Page :** <apex:outputPanel rendered="ServiceIns != null"> <!--Outputpanel rendered in "ServiceIns" not equal to null--> <apex:outputField value="{!ServiceIns.Terminal__c}" /> <apex:outputField value="{!ServiceIns.Location__c}" /> <apex:outputField value="{!ServiceIns.Account__r.Name}" /> <apex:outputField value="{!ServiceIns.Opportunity__r.Works_CSP__c}" /> <apex:outputField value="{!ServiceIns.Airports__c}" /> <apex:outputField value="{!ServiceIns.Opportunity__r.Name}" /> <apex:outputField value="{!ServiceIns.Service__r.name}" /> <apex:outputField value="{!ServiceIns.Physical_ID__c}" /> </apex:outputPanel>