+ Start a Discussion
Eric BowdenEric Bowden 

Canvas Apps as a Visual Force component

Has anyone heard if there are plans to extend Canvas Apps (http://blogs.developerforce.com/developer-relations/2012/09/create-force-com-apps-anywhere-with-force-com-canvas.html)  for deeper integration into force.com or if there is a way to do this today?

 

I'm looking at building an integration by building and distributing Visual Force Components.  The idea is to provide a new UI feature which force.com developers can easily snap into Visual Force pages.  But, one limitation I encountered is with outbound web requests, limited to 3MB, among other limitations.  For this reason, I'm led to see if I can host my features outside of Salesforce and then integrate as a Canvas App or using a similar iframe approach.

 

Canvas Apps look very interesting because (assuming I understand correctly) they allow me to develop on my own platform and hosting provider and at the same time providing users with a single sign-on experience.  The limits I would encouter developing Canvas Apps are those which apply to web services, which I have found to be much more relaxed.

 

However, Canvas Apps appear to be limited to presenting as a link from the Chatter page.  It would be great if I could leverage the goodness of Canvas Apps from inside a custom component.  

 

I've also thought about spinning my own, using OAuth + iFrame approach.  I think this approach could do the trick but wanted to first see if others have tried using the Canvas Apps goodness in other places such as Visual Force pages and components.

Best Answer chosen by Admin (Salesforce Developers) 
jhurstjhurst

Eric,

 

We are looking to  extend Force.com Canvas so that the Cnavas Apps you create can be added to Visualforce Pages.  We are working to get this functionality in the Spring '13 release.

 

As a point of clarification, though.  Canvas will give your 3rd party app the information and tokens necessary to make calls back into salesforce.com as the salesforce user, but we will not be able to automaically SSO into your 3rd party org.  This would have to be developd on your side to allow authentication into both sides.

 

Hope this helps.

 

Jay

All Answers

jhurstjhurst

Eric,

 

We are looking to  extend Force.com Canvas so that the Cnavas Apps you create can be added to Visualforce Pages.  We are working to get this functionality in the Spring '13 release.

 

As a point of clarification, though.  Canvas will give your 3rd party app the information and tokens necessary to make calls back into salesforce.com as the salesforce user, but we will not be able to automaically SSO into your 3rd party org.  This would have to be developd on your side to allow authentication into both sides.

 

Hope this helps.

 

Jay

This was selected as the best answer
Eric BowdenEric Bowden

That is great news!  Can't wait to see what Canvas Apps look like as part of a Visualforce page.

 

As for the SSO clarification, it is a big win for users of my app to have the info/token to authenticate back into Salesforce without needing to follow through an OAuth flow (though I did read that following the OAuth flow is an option, if desired).  Good clarification.

 

Thanks for your reply.

 

Cheers,

Eric

 

jhurstjhurst

Eric,

 

I wanted to follow up.

 

With Spring '13 you will be able to expose a Canvas App inside of a VF page.  Please see the Spring '13 Developer Guide for more information - http://www.salesforce.com/us/developer/docs/platform_connect/canvas_framework.pdf


Please let me know if you have any questions.

 

Jay

Parin BhallaParin Bhalla
Hi Eric,
I am doing canvas integration for Oracle Incentive Comp Screen Plugin In SFDC VF Page Using connected app Web Flow Get access method. However I am unable to determine how exactly OAUTH will be handled and screen can be displayed in SFDC. I have checked on with various article's and implementation guide for CANVAS,But could not find anything substantial. I will really appreciate if you could guide me with any documentation or piece of code which could help me understand what i need to do next.