<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Antonio,</div><div><br></div><div>main() methods are not managed &nbsp;by Furnace, hence why @Inject does not work. You need to fech these services from the AddonRegistry:</div><div><br></div><div>Eg:</div><div>furnace.getAddonRegistry(ResourceFactory.class).get()</div><div><br>Em 31/03/2014, às 04:26, Antonio Goncalves &lt;<a href="mailto:antonio.mailing@gmail.com">antonio.mailing@gmail.com</a>&gt; escreveu:<br><br></div><blockquote type="cite"><div><div dir="ltr">Hum.... I just did this (starting Furnace in my main) :<div><br></div><div><a href="https://github.com/agoncal/agoncal-sample-forge/blob/master/03-template/src/main/java/org/agoncal/sample/forge/template/RestEndpoint.java">https://github.com/agoncal/agoncal-sample-forge/blob/master/03-template/src/main/java/org/agoncal/sample/forge/template/RestEndpoint.java</a><br>
</div><div><br></div><div>But it doesn't work either.</div><div><br></div><div>Any idea ?</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-03-30 23:58 GMT+02:00 Ivan St. Ivanov <span dir="ltr">&lt;<a href="mailto:ivan.st.ivanov@gmail.com" target="_blank">ivan.st.ivanov@gmail.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="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="HOEnZb"><div class="h5"><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's my dependencies that are not right, because&nbsp;<b>resourceFactory</b>&nbsp;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>
&nbsp; &nbsp; <span>@Inject<br>
&nbsp; &nbsp; </span><span><b>private </b></span>TemplateProcessorFactory <span><b>factory</b></span>;<br>
<br>
&nbsp; &nbsp; <span>@Inject<br>
&nbsp; &nbsp; </span>ResourceFactory <span><b>resourceFactory</b></span>;<br>
<br>
<br>
&nbsp; &nbsp; <span><b>public static void </b></span>main(String[] args) <span><b>throws </b></span>IOException {<br>
&nbsp; &nbsp; &nbsp; &nbsp; <span><b>new </b></span>RestEndpoint().doIt();<br>
&nbsp; &nbsp; }<br>
<br>
&nbsp; &nbsp; <span><b>private void </b></span>doIt() <span><b>throws </b></span>IOException {<br>
&nbsp; &nbsp; &nbsp; &nbsp; Resource&lt;URL&gt; templateResource = <span><b>resourceFactory</b></span>.create(getClass().getResource(<span><b>"EndpointWithDTO.jv"</b></span>));<br>
&nbsp; &nbsp; &nbsp; &nbsp; Template template = <span><b>new </b></span>FreemarkerTemplate(templateResource); <span><i>// Mark this resource as a Freemarker template<br>
&nbsp; &nbsp; &nbsp; &nbsp; </i></span>TemplateProcessor processor = <span><b>factory</b></span>.fromTemplate(template);<br>
&nbsp; &nbsp; &nbsp; &nbsp; Map&lt;String,Object&gt; params = <span><b>new </b></span>HashMap&lt;String,Object&gt;(); <span><i>//Could be a POJO also.<br>
&nbsp; &nbsp; &nbsp; &nbsp; </i></span>params.put(<span><b>"name"</b></span>, <span><b>"JBoss Forge"</b></span>);<br>
&nbsp; &nbsp; &nbsp; &nbsp; String output = processor.process(params); <span><i>// should return "Hello JBoss Forge".<br>
&nbsp; &nbsp; &nbsp; &nbsp; </i></span>System.<span><b><i>out</i></b></span>.println(output);<br>
&nbsp; &nbsp; }<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><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't use @Inject outside Furnace environment. &nbsp;Not sure what'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'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'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,'Liberation Mono',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't work :&nbsp;</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.&nbsp;</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'm starting to get a bit more confident with Roaster... and now I would like to add templating. If I'm right, Roaster is nice to add bits and pieces of Java here and there, but it'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 "engine" 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&nbsp;<br>Software architect and Java Champion<br><br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a>&nbsp;|&nbsp;<a href="http://twitter.com/agoncal" target="_blank">Twitter</a>&nbsp;|&nbsp;<a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a>&nbsp;|&nbsp;<a href="http://www.parisjug.org/" target="_blank">Paris JUG</a>&nbsp;|&nbsp;<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&nbsp;<br>Software architect and Java Champion<br>





<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a>&nbsp;|&nbsp;<a href="http://twitter.com/agoncal" target="_blank">Twitter</a>&nbsp;|&nbsp;<a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a>&nbsp;|&nbsp;<a href="http://www.parisjug.org/" target="_blank">Paris JUG</a>&nbsp;|&nbsp;<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&nbsp;<br>Software architect and Java Champion<br>




<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a>&nbsp;|&nbsp;<a href="http://twitter.com/agoncal" target="_blank">Twitter</a>&nbsp;|&nbsp;<a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a>&nbsp;|&nbsp;<a href="http://www.parisjug.org/" target="_blank">Paris JUG</a>&nbsp;|&nbsp;<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&nbsp;<br>Software architect and Java Champion<br>
<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a>&nbsp;|&nbsp;<a href="http://twitter.com/agoncal" target="_blank">Twitter</a>&nbsp;|&nbsp;<a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a>&nbsp;|&nbsp;<a href="http://www.parisjug.org/" target="_blank">Paris JUG</a>&nbsp;|&nbsp;<a href="http://www.devoxx.fr/" target="_blank">Devoxx France</a>
</div></div></div>
</blockquote></div></div></div><div><div><br><br clear="all"><div><br></div>-- <br>Antonio Goncalves&nbsp;<br>Software architect and Java Champion<br><br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a>&nbsp;|&nbsp;<a href="http://twitter.com/agoncal" target="_blank">Twitter</a>&nbsp;|&nbsp;<a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a>&nbsp;|&nbsp;<a href="http://www.parisjug.org/" target="_blank">Paris JUG</a>&nbsp;|&nbsp;<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" 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></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><br clear="all"><div><br></div>-- <br>Antonio Goncalves&nbsp;<br>Software architect and Java Champion<br>
<br><a href="http://www.antoniogoncalves.org/" target="_blank">Web site</a>&nbsp;|&nbsp;<a href="http://twitter.com/agoncal" target="_blank">Twitter</a>&nbsp;|&nbsp;<a href="http://www.linkedin.com/in/agoncal" target="_blank">LinkedIn</a>&nbsp;|&nbsp;<a href="http://www.parisjug.org/" target="_blank">Paris JUG</a>&nbsp;|&nbsp;<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">forge-dev@lists.jboss.org</a></span><br><span><a href="https://lists.jboss.org/mailman/listinfo/forge-dev">https://lists.jboss.org/mailman/listinfo/forge-dev</a></span></div></blockquote></body></html>