<div dir="ltr">Hi Antonio,<div><br></div><div>As far as I can see, in your main class you are not inside the Furnace container, you are rather on you own. That is why nobody has injected you your dependencies.</div><div><br>
</div><div>Cheers,</div><div>Ivan</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Mar 30, 2014 at 11:45 PM, Antonio Goncalves <span dir="ltr">&lt;<a href="mailto:antonio.mailing@gmail.com" target="_blank">antonio.mailing@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Here is my code. I think it&#39;s my dependencies that are not right, because <b>resourceFactory</b> is not injected so I get a NPE<div>
<br></div><div><br></div><div>







<p><span><b>public class </b></span>RestEndpoint {<br>
<br>
    <span>@Inject<br>
    </span><span><b>private </b></span>TemplateProcessorFactory <span><b>factory</b></span>;<br>
<br>
    <span>@Inject<br>
    </span>ResourceFactory <span><b>resourceFactory</b></span>;<br>
<br>
<br>
    <span><b>public static void </b></span>main(String[] args) <span><b>throws </b></span>IOException {<br>
        <span><b>new </b></span>RestEndpoint().doIt();<br>
    }<br>
<br>
    <span><b>private void </b></span>doIt() <span><b>throws </b></span>IOException {<br>
        Resource&lt;URL&gt; templateResource = <span><b>resourceFactory</b></span>.create(getClass().getResource(<span><b>&quot;EndpointWithDTO.jv&quot;</b></span>));<br>
        Template template = <span><b>new </b></span>FreemarkerTemplate(templateResource); <span><i>// Mark this resource as a Freemarker template<br>
        </i></span>TemplateProcessor processor = <span><b>factory</b></span>.fromTemplate(template);<br>
        Map&lt;String,Object&gt; params = <span><b>new </b></span>HashMap&lt;String,Object&gt;(); <span><i>//Could be a POJO also.<br>
        </i></span>params.put(<span><b>&quot;name&quot;</b></span>, <span><b>&quot;JBoss Forge&quot;</b></span>);<br>
        String output = processor.process(params); <span><i>// should return &quot;Hello JBoss Forge&quot;.<br>
        </i></span>System.<span><b><i>out</i></b></span>.println(output);<br>
    }<br>
}<br>
</p></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-30 22:36 GMT+02:00 Antonio Goncalves <span dir="ltr">&lt;<a href="mailto:antonio.mailing@gmail.com" target="_blank">antonio.mailing@gmail.com</a>&gt;</span>:<div>
<div class="h5"><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">So it might be my pom.xml<div><br></div><div>Where do you get @Inject from ? Just from javax.inject:javax.inject ? Wich Furnace dependencies do you need ?</div>

</div><div class="gmail_extra"><br><br><div class="gmail_quote">
2014-03-30 22:31 GMT+02:00 George Gastaldi <span dir="ltr">&lt;<a href="mailto:ggastald@redhat.com" target="_blank">ggastald@redhat.com</a>&gt;</span>:<div><div><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">


<div dir="auto"><div>Your code should work, you can&#39;t use @Inject outside Furnace environment.  Not sure what&#39;s going on, need to investigate a little further</div><div><br>Em 30/03/2014, ās 17:26, Antonio Goncalves &lt;<a href="mailto:antonio.mailing@gmail.com" target="_blank">antonio.mailing@gmail.com</a>&gt; escreveu:<br>


<br></div><div><div><blockquote type="cite"><div><div dir="ltr">Good old NPE ;o)<div><br></div><div>I&#39;m not running the code into a container, so @Inject does not work. In the readme there is the addonRegistry method. In all the samples, the registery is injected... but how do I use all that with a good old Main ?</div>



</div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-30 22:17 GMT+02:00 George Gastaldi <span dir="ltr">&lt;<a href="mailto:ggastald@redhat.com" target="_blank">ggastald@redhat.com</a>&gt;</span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div dir="auto"><div>Why it doesn&#39;t work? Is any exception being thrown?</div><div><br></div><div>Em 30/03/2014, ās 17:14, Antonio Goncalves &lt;<a href="mailto:antonio.mailing@gmail.com" target="_blank">antonio.mailing@gmail.com</a>&gt; escreveu:<br>



<br></div><div><div><blockquote type="cite"><div><div dir="ltr">Hum...<div><br></div><div>In the README there is :</div><div><br></div><div><span style="font-family:Consolas,&#39;Liberation Mono&#39;,Courier,monospace;font-size:16px;line-height:22.399999618530273px;white-space:pre-wrap">@Inject private TemplateProcessorFactory factory</span><br>




</div><div><br></div><div>But is there a way to use the templating from a Main class ? If I use Forge, I have Furnace as a container, and I was trying something like this, but it doesn&#39;t work : </div><div>







<p>Furnace furnace = <i>startFurnace</i>();<br>Imported&lt;TemplateProcessorFactory&gt; imported = furnace.getAddonRegistry(TemplateProcessorFactory.<span><b>class</b></span>);<br>TemplateProcessorFactory factory = imported.get();<br>





</p></div><div><br></div><div>Any simple Hello World from a Main class and a pom.xml ?</div><div><br></div><div>Thanks</div><div>Antonio</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-29 19:03 GMT+01:00 George Gastaldi <span dir="ltr">&lt;<a href="mailto:ggastald@redhat.com" target="_blank">ggastald@redhat.com</a>&gt;</span>:<br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto"><div>Hi Antonio,</div><div><br></div><div>Roaster currently only maintains a class structure (add/remove fields, methods, interfaces,etc), not code (method bodies) at the moment. </div>




<div><br></div><div>There is a JIRA to allow that though.</div><div><br></div><div>See the templates addon README to learn how to generate content from a template.</div><div><br></div><div>Best Regards,</div><div><br></div>




<div>George Gastaldi</div><div><br>Em 29/03/2014, ās 14:43, Antonio Goncalves &lt;<a href="mailto:antonio.mailing@gmail.com" target="_blank">antonio.mailing@gmail.com</a>&gt; escreveu:<br><br></div><div><div><blockquote type="cite">




<div><div dir="ltr"><div class="gmail_extra">Hi all,</div><div class="gmail_extra"><br></div><div class="gmail_extra">I&#39;m starting to get a bit more confident with Roaster... and now I would like to add templating. If I&#39;m right, Roaster is nice to add bits and pieces of Java here and there, but it&#39;s better to use Templates when there is a lot of code, and mix templating and Roaster for better code customization.</div>





<div class="gmail_extra"><br></div><div class="gmail_extra">Is there a sample I could use to write a Hello Word ? A template with an &quot;engine&quot; that uses Roaster to add Java code to the template.</div><div class="gmail_extra">





<br></div><div class="gmail_extra">Thanks<br clear="all"><div><br></div>-- <br>Antonio Goncalves <br>Software architect and Java Champion<br><br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a> | <a href="http://twitter.com/agoncal" target="_blank">Twitter</a> | <a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a> | <a href="http://www.parisjug.org/" target="_blank">Paris JUG</a> | <a href="http://www.devoxx.fr/" target="_blank">Devoxx France</a>
</div></div>
</div></blockquote></div></div><blockquote type="cite"><div><span>_______________________________________________</span><br><span>forge-dev mailing list</span><br><span><a href="mailto:forge-dev@lists.jboss.org" target="_blank">forge-dev@lists.jboss.org</a></span><br>




<span><a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a></span></div></blockquote></div><br>_______________________________________________<br>





forge-dev mailing list<br>
<a href="mailto:forge-dev@lists.jboss.org" target="_blank">forge-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br>Antonio Goncalves <br>Software architect and Java Champion<br>




<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a> | <a href="http://twitter.com/agoncal" target="_blank">Twitter</a> | <a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a> | <a href="http://www.parisjug.org/" target="_blank">Paris JUG</a> | <a href="http://www.devoxx.fr/" target="_blank">Devoxx France</a>
</div>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>forge-dev mailing list</span><br><span><a href="mailto:forge-dev@lists.jboss.org" target="_blank">forge-dev@lists.jboss.org</a></span><br>



<span><a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a></span></div></blockquote></div></div></div><br>_______________________________________________<br>




forge-dev mailing list<br>
<a href="mailto:forge-dev@lists.jboss.org" target="_blank">forge-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br>Antonio Goncalves <br>Software architect and Java Champion<br>



<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a> | <a href="http://twitter.com/agoncal" target="_blank">Twitter</a> | <a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a> | <a href="http://www.parisjug.org/" target="_blank">Paris JUG</a> | <a href="http://www.devoxx.fr/" target="_blank">Devoxx France</a>
</div>
</div></blockquote><blockquote type="cite"><div><span>_______________________________________________</span><br><span>forge-dev mailing list</span><br><span><a href="mailto:forge-dev@lists.jboss.org" target="_blank">forge-dev@lists.jboss.org</a></span><br>


<span><a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a></span></div></blockquote></div></div></div><br>_______________________________________________<br>



forge-dev mailing list<br>
<a href="mailto:forge-dev@lists.jboss.org" target="_blank">forge-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a><br></blockquote></div></div></div><div><div><br><br clear="all"><div><br></div>
-- <br>Antonio Goncalves <br>Software architect and Java Champion<br>
<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a> | <a href="http://twitter.com/agoncal" target="_blank">Twitter</a> | <a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a> | <a href="http://www.parisjug.org/" target="_blank">Paris JUG</a> | <a href="http://www.devoxx.fr/" target="_blank">Devoxx France</a>
</div></div></div>
</blockquote></div></div></div><div><div class="h5"><br><br clear="all"><div><br></div>-- <br>Antonio Goncalves <br>Software architect and Java Champion<br><br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a> | <a href="http://twitter.com/agoncal" target="_blank">Twitter</a> | <a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a> | <a href="http://www.parisjug.org/" target="_blank">Paris JUG</a> | <a href="http://www.devoxx.fr/" target="_blank">Devoxx France</a>
</div></div></div>
<br>_______________________________________________<br>
forge-dev mailing list<br>
<a href="mailto:forge-dev@lists.jboss.org">forge-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/forge-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/forge-dev</a><br></blockquote></div><br></div>