58 comments

  1. When installing the webpart, the option -globalinstall must be specified. (see document in zip).

    When omitting that option, the webpart is installed into bin-folder of the virtual server and is not fully trusted by SharePoint (code-access security). If this is the case, I suggest you uninstall the webpart and install it again by passing the -globalinstall option.

    Another option is to configure SharePoint to trust all webparts that are installed on the server by settings the trust-level to Full in the web.config of the virtual server:

    <trust level="Full" originUrl="" />

    The reason the webpart needs additional trust (code-access security) is that it uses the SharePoint-objectmodel to get information of the specified view (list) and to read the Xslt-file from the filesystem/url.

    Robert te Kaat

  2. Great idea and Web Part Robert. Having one issue though, or maybe this is not supported? Can you display a list that is from a subsite? It works fine with a list from a higher parent site, but not the other way around.

    I get a "System.NullReferenceException: Object reference not set to an instance of an object." error.

    Thanks!

    Kale Davis

  3. This is very nice! Will the code for it be available or is this an as designed web part or at some point a commercial web part?

    Thanks for the work!

    Brian

    Brian Standen

  4. This webpart IS and will always BE 100% free!

    I expect similar functionality to be available in WSS v3/2007. Therefore it has no use for me or my company to make this a commercial webpart. Furthermore, as I stated in this article, there are already several commercial products which have similar functionality and a lot more.

    And it’s always nice to give something back to the SharePoint-community! ๐Ÿ™‚

    I have no plans to release the source code, since the webpart is part of a SharePoint-library we use in our company for commercial exploitation. However, the assemblies are not obfuscated, so you can use Reflector to take a look at the code (and maybe point out to me where the bugs are located! :)).

    My intention is to fix some of the issues people report in this thread. Some issues may also be related to bugs in the supplied xslt-file. Those bugs can be fixed by people themselves without the need for the original source code.

    Robert te Kaat

  5. Hi,

    This is a great webpart but i have a problem …

    Everything works fine on my virtual machine but when i try it on a production server i get this error :

    Error occurred: System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.CheckFinalStatus() at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.HttpWebRequest.GetResponse() at InfoSupport.SharePoint.FileUtil.LoadDocument(String url, HttpContext context) at InfoSupport.SharePoint.WebParts.FlexListViewer.RenderWebPart(HtmlTextWriter output)

    at System.Net.HttpWebRequest.CheckFinalStatus() at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.HttpWebRequest.GetResponse() at InfoSupport.SharePoint.FileUtil.LoadDocument(String url, HttpContext context) at InfoSupport.SharePoint.WebParts.FlexListViewer.RenderWebPart(HtmlTextWriter output)

    What can be the problem here? I did a global installation and the security level is "medium"

    Thanks for the help !

    Bart Vandenheede

    Bart Vandenheede

  6. About security: The webpart uses the identity of the user that accessed the page the webpart is on, to access the list on the other site. This means that it will only work if the user has read-access to the site the list is on.

    However, that is not the problem here. The webpart tries to load the xslt-file and the current user does not seem to have access to it. When no xslt was specified, the standard xslt is loaded. It’s location is in the wpresources-folder of the webpart and should therefore always be loaded without any trouble.

    –> Did you specify a custom xslt?

    –> Did you specify certain NTFS-security-settings to any of these folders?:

    – C:Program FilesCommon FilesMicrosoft Sharedweb server extensionswpresources

    – <local folder corresponding to the web-address of the folder that contains the custom xslt>

    Robert te Kaat

  7. i use the default xslt

    I gave the user read/modify rights but i still get the same error

    Can there be another reason?

    Thx for the help !

    (you can also email me on bart-at-orbitone-dot-com

    Bart Vandenheede

  8. Bart / Robert, were you able to fix the 401 error? I’m having the same problem… any help is appreciated. Thanks!

    Luke

    Luke

  9. Everybody who’s having problems with the webpart, please drop me an email and I will send you a debug-build. After installing the debug-version, the error-messages will also contain line-numbers, so I know exactly which line of code is causing the error.

    (robert.te.kaat AT gmail.com)

    Robert te Kaat

  10. Is it possible to use it on My Site with links to a detailpages?

    j_ligtenberg @ hotmail.com look in your InfoSupport database for my companyaddress ๐Ÿ™‚

    Jan Ligtenberg

  11. Because the FlexListViewer-webpart uses an xslt-file to do the html-rendering, you can render a list in any shape you like. The webpart provides the xml that contains the definition of the list (columns (name, type, etc) and the data (separated into ‘parts’, eg: part1 containing the username, part2 containing the userid). If you add an url-column to the site, instead of just printing the url as a text/link, you can use the url to make the value of another column the link to the url.

    This does however require some xslt-knowlegde. Flexibility (hence the ‘Flex’ :)) comes with a price…

    I will write a post on how to use the FlexListViewer-webpart to display a list with custom HTML-rendering. But I got to find some time first…

    Robert te Kaat

  12. Those of you getting a "System.NullReferenceException: Object reference not set to an instance of an object"-errormessage, I may have figured out the reason for that error. It may be caused by an incorrect URL to the list to be displayed. The URL must be the URL for a VIEW of the list, not the list itself. So instead of specifying:

    http://portal/Lists/MyList

    try specifying:

    http://portal/Lists/MyList/AllItems.aspx

    Please let me know if this solves your problem.

    Robert te Kaat

  13. The error may also be caused by collumns on the View with special characters. David Beraha found out that the NullReferenceException in his case was caused by a collumn with the name "Geändert" (german for "Changed").

    If you walk into this error, try to remove those collumns from the view to determine which collumn caused the problem. (…and then post it here, so I can try to fix it! :))

    Robert te Kaat

  14. the error was also caused by links having blanks. the link will look something like this:

    http://portal/Our%20Community/Lists/Inspirational%20Quotes/AllItems.aspx

    hosting the list item to a site without spaces will show you no errors.

    nyagi

  15. great

    tosc

  16. Great work, thank you.

    Do you plan to enhance the FlexListViewer-webpart with authentication functionality?

    I like to connect listforms from a site where the client user has no access.

    If you plan to do, I could support you ๐Ÿ˜‰

    daniel

  17. Why would you want such functionality? If the information is not secret, why not give the user read-right in the target list? (you can still deny access to the site)

    To do so, it would need to impersonate an account which is allowed to read the list. However impersonating an account doesn’t work when accessing the SharePoint objectmodel.

    (I don’t consider the workaround that people have come up with to be realistic workarounds (COM+, etc))

    Robert te Kaat

  18. We have recently downloaded and installed the new version v1.5 of FlexListViewer – but unfortunately an error message (see below) occurs when using it. Any clue on what that means?

    Thanks in advance for help.

    Error occurred: To use the RootFolder property, set the IncludeRootFolder property on the SPListCollection object to true.

    Details: Microsoft.SharePoint.SPException: To use the RootFolder property, set the IncludeRootFolder property on the SPListCollection object to true. at Microsoft.SharePoint.SPList.get_RootFolder() at InfoSupport.SharePoint.SPListUtil.GenerateListViewObjectModel(SPView view) at InfoSupport.SharePoint.WebParts.FlexListViewer.RenderWebPart(HtmlTextWriter output)

    at Microsoft.SharePoint.SPList.get_RootFolder() at InfoSupport.SharePoint.SPListUtil.GenerateListViewObjectModel(SPView view) at InfoSupport.SharePoint.WebParts.FlexListViewer.RenderWebPart(HtmlTextWriter output)

    John Edemann

  19. There are issues when using it do display remote document libraries.

    FlexListViewer-webpart was intended for use with lists. Since doclibs are always accompanied by a list that holds the filenames, metadata, etc, FlexListViewer can display those as well. However in some cases it seems to crash (this error has been reported before).

    For now I have no intentions (=time & energy) to fix these errors, but perhaps in the near future I will.

    Robert te Kaat

  20. Hi,

    Today i did a second test with the FlexWebpartViewer, but is still get the same error below. Is it possbile that the webpart does not work with https? When i do a test on a http portal on the same webfarm it works.

    Error occurred: System.Net.WebException: The remote server returned an error: (401) Unauthorized. at System.Net.HttpWebRequest.CheckFinalStatus() at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.HttpWebRequest.GetResponse() at InfoSupport.SharePoint.FileUtil.LoadDocument(String url, HttpContext context) at InfoSupport.SharePoint.WebParts.FlexListViewer.RenderWebPart(HtmlTextWriter output)

    at System.Net.HttpWebRequest.CheckFinalStatus() at System.Net.HttpWebRequest.EndGetResponse(IAsyncResult asyncResult) at System.Net.HttpWebRequest.GetResponse() at InfoSupport.SharePoint.FileUtil.LoadDocument(String url, HttpContext context) at InfoSupport.SharePoint.WebParts.FlexListViewer.RenderWebPart(HtmlTextWriter output)

    Thanks in advance for the information!

    Kind regards

    Bart Vandenheede

  21. 401 Unauthorized could be solved by enabling anonymous access to the virtual folder "_wpresources/InfoSupport.SharePoint.WebParts.FlexListViewer1.5.0.0__15243da486dfb77f" via IIS management console

    01eg

  22. I have tried to use the flexlistviewer webpart (v 1.6) on the same page as where the list itself is located, this however generates an error. The reason why i would like to do this is that I would like to use the xslt transformation oppotunities the webpart provides.

    Is the error by design or should the webpart be able to handle this?

    The error message:

    Error occurred: To use the RootFolder property, set the IncludeRootFolder property on the SPListCollection object to true.

    Janus Thousig

  23. Hello Janus,

    The RootFolder-error is a known bug of the FlexListViewer-webpart. You are using it to display the contents of a document library, instead of a ‘normal’ list. Other people have stumbled into this error as well. So far I haven’t been giving it much priority, but I may decide to fix it in a future version. No guarantees though! ๐Ÿ™‚

    Robert

    Robert te Kaat

  24. Hi Robert

    Thanks for the very fast reply. I am however using a normal custom list and it works in all other instances except when the list and the webpart are both present on the same page. I have tried on both SPS and WSS sites with the same result.

    Should it be possible to have the list and webpart on the same page?

    Loooking forward to heering from you.

    Kind Regards.

    Janus Thousig

  25. It should definately be possible. Can you save the custom list as a template (stp) and send it to me (on my gmail-account which I mentioned in one of my earlier replies on this article). I can only use Dutch and English templates, so if the list is in a different language, please recreate it as an English list.

    Robert te Kaat

  26. Nice Job! Great idea and implementation!

    Mark Kruger, SharePoint MVP

  27. I have upgraded my wss to asp.net 2 – and the Flexpart Viewer is not working, as soon as it is added to a page/site, an error occours and I can only remove it

    Normann P. Nielsen

  28. I never tested it on ASP.NET 2.0. I don’t realy see any reasons for switching to .NET 2.0 when using WSS/SPS 2003.

    Robert te Kaat

  29. Cool! Very useful webpart!

    It was just for my needs… Thanks ๐Ÿ™‚

    Geri Krumova

  30. I want to get the list to show items that by clicking on will open and was expecting to see some sort of option available in the webpart for enabling this but cannot. Does this have to be coded in XSLT or am I missing something obvious ?

    Steve Sumner

  31. Steve, the webpart displays the content of the view who’s URL you specified. If you want other fields to display, you can just change the settings of the view, since that’s possible with standard SharePoint functionality. Only for unsupported things (like the snooker-balls in my other article), you need to create your own XSLT.

    I think you need to modify the view, so that is displays the field with a link to the item. This is usually only possible for one field of the list (like the “Title”-column).

    Robert te Kaat

  32. Robert,

    Here’s what I’m trying to do… I’m trying to re-use your functionality in a connected web part. In other words, one list contains URLs and your web part will render the list referenced in the other.

    I have looked at the code in the .NET Reflector and there’s one piece that doesn’t come thru (it’s in the SPUtil.GetSPListItemValueParts). It’s one of those things. Is it possible for you to provide that for us or could you provider the connected functionality?

    Shane Bishop

  33. Excellent web part. We have a great many uses for it here. We have run into one hurdle however that I was hoping you could get us over. In our environment we require client certificate in IIS. This webpart, along with many other things here, won’t work with client cert it seems. I was wondering if there was a way around this? Thanks!

    Jacob Skaggs

  34. Robert,

    After looking a bit more into the code, it looks like this PrivateImplementation has something to do with changing the FieldType into an integer.
    So, I guess, if you have a mapping of field types to integers, that would be perfect.

    Thanks again

    Shane

    Shane Bishop

  35. In terms of security authentication, we are constantly getting authentication errors when we try to display the contents from one SharePoint Portal Area list (or Document Library) within another SharePoint Portal Server Area. The problem does not occur when you have the FlexListViewer sitting on a SharePoint Portal Server area page, that is pulling information from a WSS top level site collection. I assume this is because your code is based purely on WSS security and not portal security? I found that it quickly locked out my account because it was unable to authenticate, even though a am a local administrator on the box and a SharePoint administrator. Is it a kerberos issue? (I have a single portal server with SQL 2005 installed on the same box).

    Will there be a fix for this issue?

    AlanC

  36. I am getting a “System.NullReferenceException: Object reference not set to an instance of an object”-errormessage. This only occurs when a column in one of the list items is blank. If all columns have an entry, it works fine.

    I am using a milestone schedule which has a draft, review and final column. In some cases there is only a final in which case draft and review are blank. This throws the exception; when I put dates in the draft and review columns it works,

    Bill Burke

  37. Hello Bill. We will fix this in a future version (SharePoint 2007 only!). Can’t really tell when we have the time though… ๐Ÿ™

    robertka

  38. Thanks…… and thank you for the fine work.

    Bill Burke

  39. Hi,

    I guess I’m trying to use your web part ifor something it wasn’t intended for, however I was wondering if it can be made to work for document libraries with sub folders. I’m finding that although I can display the list of documents, the href which is created does not include the sub folder within this link (i.e. ows_FileRef) and therefore fails to open.

    Thanks for your help.

    P.S. Works great for normal lists and very much appreciated

    Robin Burrows

  40. You are correct: the webpart was never designed to be used with document libraries. However, in some cases it may work. You use subfolders, which are indeed not supported.
    By the way: there are several articles that advice – instead of using subfolders – to use properties (columns) to group files or to use more than one document library). You have to decide for yourself whether that’s an alternative. However, we have no plans to enhance the document library support for FlexListViewer…

    robertka

  41. I think it’s better to use the DataForm WebPart.

    This Webpart you can find only in the SharePoint Designer. For the description follow the link below.

    http://www.sharepointblogs.com/mypoint/archive/2006/12/08/16743.aspx

    Sub Zero

  42. sub zero,

    Apart from the fact this is about the Sharepoint 2003 version of the FlexListViewer, we acknowledge in this posting that using the dataview webpart (the predecessor of the dataform webpart) is an option.

    However, in your posting you need about 2 printed pages to describe how to use this dataform webpart, AND you need to buy a license in order to use Sharepoint Designer.

    We feel using the FlexlistViewer can make a big difference, since you do not need to use Frontpage or Sharepoint Designer AND it gives you an out of the box stylesheet to display lists on other sites.

    ***sidenote***
    Perhaps you can translate your posting from german to english? Since this is an english related blog a lot of our viewers are from english-speaking countries and I do think they can / will have some trouble understanding your posting.

    bartg

  43. What are the licensing requirements for this Web part?

    djb

  44. djb,

    You can use this webpart freely. However if you want to use it in a commercial software solution, please contact us through the contact form.

    bartg

  45. Hi,
    this Webpart is very useful – thank you. But in some columns, like “people and groups” the content isn’t displayed properly. For example: If the list field contains usernames, the FlexListViewer shows something like 2,#username. Does anybody have an idea?

    Thanks for the help!

    Vassilios

  46. Thanks for this useful web part.
    I am struggling to display a list with custom html rendering.
    Has anyone tried to use custom xslt file yet?
    Your help would be appreciated. Thanks!

    Marija Petkova

  47. After upgrading SPS2003 with SP3 we have a problem with the flexlistviewer.
    The problem is that after a few minutes the session closed and a error displayed.

    Is this a known problem and can it be solved ?

    Rene Schenk

  48. How difficult would it be to adapt this functionality to a discussion board? I tried out-of-the-box and got the following error:

    Error occurred: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
    Details: System.FormatException: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx). at System.Guid..ctor(String g) at Core.SPListUtil.GetSPListItemValueParts(SPView view, ListViewField listViewField, SPField field, Int32 itemId, Object fieldValue) at Core.SPListUtil.GenerateListViewObjectModel(SPView view) at FlexListViewerMOSS.FlexListViewer.RenderContents(HtmlTextWriter output)
    at System.Guid..ctor(String g) at Core.SPListUtil.GetSPListItemValueParts(SPView view, ListViewField listViewField, SPField field, Int32 itemId, Object fieldValue) at Core.SPListUtil.GenerateListViewObjectModel(SPView view) at FlexListViewerMOSS.FlexListViewer.RenderContents(HtmlTextWriter output)

    Rob Commarota

  49. Rob,

    You can download the sources at http://www.codeplex.com/isdemos.

    If you come up with a solution, feel free to send it to me and I’ll spread it through the community ๐Ÿ™‚

    Regards,
    Bart

    bartg

  50. Bart:

    Thanks. I was able to make some changes to your code and I got it working. I’d be happy to share – just let me know the best way to get the files to you.

    Thank you for a fantastic webpart.

    Rob

  51. Hi Bart & Rob,

    Has this fixed been rolled into a FlexListViewer release? If not, Rob are you able to supply the code changes necessary?

    Thanks,
    Chris

    Chris

  52. Chris, the sources are no longer maintained by us.
    I don’t think Rob merged his changes into the codebase on codeplex, so he will need to supply them to you. (if he wants to share it).

    robertka

  53. Hello

    I am tryint to access site from another server which is in my local domain, it is giving me following error, please advise
    ——————–
    Cannot access the view of the list. Are you authorized?
    Details: The Web application at http://portal/Lists/Issues List/AllItems.aspx could not be found. Verify that you have typed the URL correctly. If the URL should be serving existing content, the system administrator may need to add a new request URL mapping to the intended application.

    Ani

  54. Failed to get value of the “Attachments” column from the “Attachments” field type control. See details in log. Exception message: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)..
    Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

    Exception Details: Microsoft.SharePoint.SPException: Failed to get value of the “Attachments” column from the “Attachments” field type control. See details in log. Exception message: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)..

    Source Error:

    An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.

    Stack Trace:

    [SPException: Failed to get value of the “Attachments” column from the “Attachments” field type control. See details in log. Exception message: Guid should contain 32 digits with 4 dashes (xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)..]
    Microsoft.SharePoint.WebControls.BaseFieldControl.OnLoad(EventArgs e) +1661
    System.Web.UI.Control.LoadRecursive() +47
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Control.LoadRecursive() +131
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1061

    Antonio

  55. antonio,

    What’s your question?

    Bart

    bartg

  56. Antonio, you error occurs when you have another webpart (hidden or otherwise) on your page. To fix the “Failed to get value of the “Attachments” column from the “Attachments” field type” error, you need to hide the other “part1” span in the other webparts.

    At the bottom of page, simply add this script

    var y = document.getElementById(‘WebPartWPQ2’), child;
    while(child=y.firstChild)
    {
    y.removeChild(child);
    }

    Hitender

  57. Sorry I haven’t checked back on this site in some time. I went ahead and uploaded the code changes I made as a patch on the codeplex site (http://www.codeplex.com/ISDemos/SourceControl/ListDownloadableCommits.aspx) – not sure if that was the right way to do it or not. Anyway, it is currently being evaluated. I’d be happy to post the code somewhere else if there is a better place.

    Rob

  58. Thanx Hitender, your code helped me a fixen a poorly post.aspx page.

    deadmanjones

Comments are closed.