<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<body link="#355491" alink="#4262a1" vlink="#355491" style="background: #e2e2e2; margin: 0; padding: 20px;">

<div>
        <table cellpadding="0" bgcolor="#FFFFFF" border="0" cellspacing="0" style="border: 1px solid #dadada; margin-bottom: 30px; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                <tbody>
                        <tr>

                                <td>

                                        <table border="0" cellpadding="0" cellspacing="0" bgcolor="#FFFFFF" style="border: solid 2px #ccc; background: #dadada; width: 100%; -moz-border-radius: 6px; -webkit-border-radius: 6px;">
                                                <tbody>
                                                        <tr>
                                                                <td bgcolor="#000000" valign="middle" height="58px" style="border-bottom: 1px solid #ccc; padding: 20px; -moz-border-radius-topleft: 3px; -moz-border-radius-topright: 3px; -webkit-border-top-right-radius: 5px; -webkit-border-top-left-radius: 5px;">
                                                                        <h1 style="color: #333333; font: bold 22px Arial, Helvetica, sans-serif; margin: 0; display: block !important;">
                                                                        <!-- To have a header image/logo replace the name below with your img tag -->
                                                                        <!-- Email clients will render the images when the message is read so any image -->
                                                                        <!-- must be made available on a public server, so that all recipients can load the image. -->
                                                                        <a href="http://community.jboss.org/index.jspa" style="text-decoration: none; color: #E1E1E1">JBoss Community</a></h1>
                                                                </td>

                                                        </tr>
                                                        <tr>
                                                                <td bgcolor="#FFFFFF" style="font: normal 12px Arial, Helvetica, sans-serif; color:#333333; padding: 20px;  -moz-border-radius-bottomleft: 4px; -moz-border-radius-bottomright: 4px; -webkit-border-bottom-right-radius: 5px; -webkit-border-bottom-left-radius: 5px;"><h3 style="margin: 10px 0 5px; font-size: 17px; font-weight: normal;">
    Portlet Development is Effectively Unusable in JBoss Tools
</h3>
<span style="margin-bottom: 10px;">
    reply from <a href="http://community.jboss.org/people/factor3">Robert Brown III</a> in <i>JBoss Tools Development</i> - <a href="http://community.jboss.org/message/554546#554546">View the full discussion</a>
</span>
<hr style="margin: 20px 0; border: none; background-color: #dadada; height: 1px;">

<div class="jive-rendered-content"><p><span style="font-size: 12pt;">Actually, I had an OK weekend, since I was attending the memorial service of a friend/brother who recently passed away. It could have beenbetter -- but it could have been worse. Thanks for asking.</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">Anyway, yes I did download and utilize what should be a Portlet runtime: the JBoss (Gatein) Portlet Container runtime. I chose it because I needed to have a more lightweight system for development on the machines that I was using. This is structured like the full JBoss Gatein Portal, the only difference was the .WAR file(s) that are deployed to it.</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">I would consider it a bug if the portlet component checker in the JBoss Tools plugin(s) did not recognize the Portlet Container as a legitimate Portlet runtime. It runs like a JBoss Portlet and even displays JBoss Portlet pages, and you can deploy portlets to it using the same methods as you would using the full Portal. Consequently, in my opinion if the Tools do not recognize the container as a real portlet runtime, then this is definitely something that should be rectified.</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">Of course, I am not working on this stuff so it isn't my call. I can only suggest...</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">&#160;&#160; As for the alternative: I did deactivate the "check runtimes... " checkbox and the portlet facets appeared. And frankly, I agree: you probably should make this disabled by default. Not just because of the confusion, and the fact that the documentation doesn't say a word about it, but because this check ties users into developing/testing portlets only for JBoss. If someone wants to make a portlet that can work under any Portal (which is what JSR-286 portlets are supposed to be able to do) the "check runtimes... " selection will make it impossible to test the portlet on other environments from within Eclipse. In other words, that selection is providing a form of "vendor lock- in" that you people are supposed to be avoiding.</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">Unfortunately, there is another problem that I am encountering that is not in the documentation: the problem of having to select "user libraries" where none are available.</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">&#160;&#160; There is a window in the Wizard called "JBoss Portlet Capabilities" where Eclipse tries to force me to select a "user library" in order to complete the portlet facet. I find this to be extremely annoying for two reasons: (1) I thought I was including the necessary libraries for portlets when I configured the facet in the first place (compare this wizard with the one provided by the Eclipse Portal Pack plugin which works with Webspace). An Eclipse facet is supposed to provide this kind of dependency automatically when selected (Eclipse Portal Pack certainly does!), so why the necessity for pointing to a user library??? (2) when this window comes up it displays an empty list of user libraries. So where am I supposed to find the user libraries that are required???</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">I consider this a definite bug and a sign of improper implementation of an Eclipse facet. At least, you need to update the documentation so that a user can find and point to wherever the required JAR files are. A more acceptable solution would be to at least put the names and locations of appropriate user libraries into the Wizard so that a user can select one of them. Of course, the best solution would be to eliminate the "Portlet Capabilities" window entirely and create a proper facet that includes the correct libraries in the classpath when it is selected.</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">In summary: I thank you for your help and information, but despite it JBoss Tools is still unusable for portlet development, as far as I can tell. Unless, of course, there is more information about the portlet setup that I am unaware of...</span></p><p><span style="font-size: 12pt;"><br/></span></p><p><span style="font-size: 12pt;">Please advise.</span></p><p><span style="font-size: 12pt;"><br/></span></p></div>

<div style="background-color: #f4f4f4; padding: 10px; margin-top: 20px;">
    <p style="margin: 0;">Reply to this message by <a href="http://community.jboss.org/message/554546#554546">going to Community</a></p>
        <p style="margin: 0;">Start a new discussion in JBoss Tools Development at <a href="http://community.jboss.org/choose-container!input.jspa?contentType=1&containerType=14&container=2129">Community</a></p>
</div></td>
                        </tr>
                    </tbody>
                </table>


                </td>
            </tr>
        </tbody>
    </table>

</div>

</body>
</html>