Hum....
Yes, I ran the Furnace Maven plugin, endup with several folders, run
my Main class... and same old :
ContainerException: No services of type
[org.jboss.forge.addon.resource.ResourceFactory] could be found in any
started addons
I just want to use templating out of the box on a Main class (for my
Tools in Action at Devoxx)... Any easy "Hello World" with the right
pom.xml and steps ? Looks like I'm not far... but...
2014-03-31 21:10 GMT+02:00 George Gastaldi <ggastald(a)redhat.com
<mailto:ggastald@redhat.com>>:
It should contain several folders, one for each available addon.
Run the furnace-maven-plugin again
Em 31/03/2014, às 16:06, Antonio Goncalves
<antonio.mailing(a)gmail.com <mailto:antonio.mailing@gmail.com>>
escreveu:
> There is just an empty installed.xml file ?!?!? What is expected
> in this folder ?
>
>
>
>
> 2014-03-31 19:42 GMT+02:00 George Gastaldi <ggastald(a)redhat.com
> <mailto:ggastald@redhat.com>>:
>
> Check if your target/addons folder contains the deployed
> addons structure. It should have been created by the
> furnace-maven-plugin
>
> Em 31/03/2014, às 14:39, Antonio Goncalves
> <antonio.mailing(a)gmail.com
> <mailto:antonio.mailing@gmail.com>> escreveu:
>
>> Grrr....
>>
>> ContainerException: No services of type
>> [org.jboss.forge.addon.resource.ResourceFactory] could be
>> found in any started addons.
>>
>> Here is the code, I might be doing something wrong.... but I
>> don't know what else to do now
>>
>>
>>
https://github.com/agoncal/agoncal-sample-forge/blob/master/03-template/s...
>>
>>
>>
>> 2014-03-31 19:19 GMT+02:00 George Gastaldi
>> <ggastald(a)redhat.com <mailto:ggastald@redhat.com>>:
>>
>> Oh, sorry, my fault. It should be:
>> furnace.getAddonRegistry().getServices(ResourceFactory.class).get();
>>
>>
>> Em 31/03/2014, às 14:11, Antonio Goncalves
>> <antonio.mailing(a)gmail.com
>> <mailto:antonio.mailing@gmail.com>> escreveu:
>>
>>> If I do the following, it doesn't work :
>>>
>>> ResourceFactory resourceFactory =
>>> furnace.getAddonRegistry(ResourceFactory.*class*).get();
>>> TemplateProcessorFactory factory =
>>>
furnace.getAddonRegistry(TemplateProcessorFactory.*class*).get();
>>>
>>> That because the method getAddonRegistry takes a
>>> AddonRepository.
>>>
>>>
>>> Any idea ?
>>>
>>>
>>>
>>>
>>> 2014-03-31 16:00 GMT+02:00 George Gastaldi
>>> <ggastald(a)redhat.com <mailto:ggastald@redhat.com>>:
>>>
>>> Antonio,
>>>
>>> main() methods are not managed by Furnace, hence
>>> why @Inject does not work. You need to fech these
>>> services from the AddonRegistry:
>>>
>>> Eg:
>>> furnace.getAddonRegistry(ResourceFactory.class).get()
>>>
>>> Em 31/03/2014, às 04:26, Antonio Goncalves
>>> <antonio.mailing(a)gmail.com
>>> <mailto:antonio.mailing@gmail.com>> escreveu:
>>>
>>>> Hum.... I just did this (starting Furnace in my
>>>> main) :
>>>>
>>>>
https://github.com/agoncal/agoncal-sample-forge/blob/master/03-template/s...
>>>>
>>>> But it doesn't work either.
>>>>
>>>> Any idea ?
>>>>
>>>>
>>>> 2014-03-30 23:58 GMT+02:00 Ivan St. Ivanov
>>>> <ivan.st.ivanov(a)gmail.com
>>>> <mailto:ivan.st.ivanov@gmail.com>>:
>>>>
>>>> Hi Antonio,
>>>>
>>>> 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.
>>>>
>>>> Cheers,
>>>> Ivan
>>>>
>>>>
>>>> On Sun, Mar 30, 2014 at 11:45 PM, Antonio
>>>> Goncalves <antonio.mailing(a)gmail.com
>>>> <mailto:antonio.mailing@gmail.com>> wrote:
>>>>
>>>> Here is my code. I think it's my
>>>> dependencies that are not right, because
>>>> *resourceFactory* is not injected so I get
>>>> a NPE
>>>>
>>>>
>>>> *public class *RestEndpoint {
>>>>
>>>> @Inject
>>>> *private *TemplateProcessorFactory *factory*;
>>>>
>>>> @Inject
>>>> ResourceFactory *resourceFactory*;
>>>>
>>>>
>>>> *public static void *main(String[] args)
>>>> *throws *IOException {
>>>> *new *RestEndpoint().doIt();
>>>> }
>>>>
>>>> *private void *doIt() *throws *IOException {
>>>> Resource<URL> templateResource =
>>>>
*resourceFactory*.create(getClass().getResource(*"EndpointWithDTO.jv"*));
>>>> Template template = *new
>>>> *FreemarkerTemplate(templateResource); ///
>>>> Mark this resource as a Freemarker template
>>>> /TemplateProcessor processor =
>>>> *factory*.fromTemplate(template);
>>>> Map<String,Object> params = *new
>>>> *HashMap<String,Object>(); ///Could be a
>>>> POJO also.
>>>> /params.put(*"name"*, *"JBoss
Forge"*);
>>>> String output =
>>>> processor.process(params); /// should
>>>> return "Hello JBoss Forge".
>>>> /System.*/out/*.println(output);
>>>> }
>>>> }
>>>>
>>>>
>>>>
>>>> 2014-03-30 22:36 GMT+02:00 Antonio
>>>> Goncalves <antonio.mailing(a)gmail.com
>>>> <mailto:antonio.mailing@gmail.com>>:
>>>>
>>>> So it might be my pom.xml
>>>>
>>>> Where do you get @Inject from ? Just
>>>> from javax.inject:javax.inject ? Wich
>>>> Furnace dependencies do you need ?
>>>>
>>>>
>>>> 2014-03-30 22:31 GMT+02:00 George
>>>> Gastaldi <ggastald(a)redhat.com
>>>> <mailto:ggastald@redhat.com>>:
>>>>
>>>> Your code should work, you can't
>>>> use @Inject outside Furnace
>>>> environment. Not sure what's
>>>> going on, need to investigate a
>>>> little further
>>>>
>>>> Em 30/03/2014, às 17:26, Antonio
>>>> Goncalves
>>>> <antonio.mailing(a)gmail.com
>>>>
<mailto:antonio.mailing@gmail.com>> escreveu:
>>>>
>>>>> Good old NPE ;o)
>>>>>
>>>>> 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 ?
>>>>>
>>>>>
>>>>> 2014-03-30 22:17 GMT+02:00 George
>>>>> Gastaldi <ggastald(a)redhat.com
>>>>>
<mailto:ggastald@redhat.com>>:
>>>>>
>>>>> Why it doesn't work? Is any
>>>>> exception being thrown?
>>>>>
>>>>> Em 30/03/2014, às 17:14,
>>>>> Antonio Goncalves
>>>>> <antonio.mailing(a)gmail.com
>>>>>
<mailto:antonio.mailing@gmail.com>>
>>>>> escreveu:
>>>>>
>>>>>> Hum...
>>>>>>
>>>>>> In the README there is :
>>>>>>
>>>>>> @Inject private
>>>>>> TemplateProcessorFactory
factory
>>>>>>
>>>>>> 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 :
>>>>>>
>>>>>> Furnace furnace =
>>>>>> /startFurnace/();
>>>>>>
Imported<TemplateProcessorFactory>
>>>>>> imported =
>>>>>>
furnace.getAddonRegistry(TemplateProcessorFactory.*class*);
>>>>>> TemplateProcessorFactory
>>>>>> factory = imported.get();
>>>>>>
>>>>>>
>>>>>> Any simple Hello World from
>>>>>> a Main class and a pom.xml ?
>>>>>>
>>>>>> Thanks
>>>>>> Antonio
>>>>>>
>>>>>>
>>>>>> 2014-03-29 19:03 GMT+01:00
>>>>>> George Gastaldi
>>>>>> <ggastald(a)redhat.com
>>>>>>
<mailto:ggastald@redhat.com>>:
>>>>>>
>>>>>> Hi Antonio,
>>>>>>
>>>>>> Roaster currently only
>>>>>> maintains a class
>>>>>> structure (add/remove
>>>>>> fields, methods,
>>>>>> interfaces,etc), not
>>>>>> code (method bodies) at
>>>>>> the moment.
>>>>>>
>>>>>> There is a JIRA to allow
>>>>>> that though.
>>>>>>
>>>>>> See the templates addon
>>>>>> README to learn how to
>>>>>> generate content from a
>>>>>> template.
>>>>>>
>>>>>> Best Regards,
>>>>>>
>>>>>> George Gastaldi
>>>>>>
>>>>>> Em 29/03/2014, às 14:43,
>>>>>> Antonio Goncalves
>>>>>>
<antonio.mailing(a)gmail.com
>>>>>>
<mailto:antonio.mailing@gmail.com>>
>>>>>> escreveu:
>>>>>>
>>>>>>> Hi all,
>>>>>>>
>>>>>>> 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.
>>>>>>>
>>>>>>> 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.
>>>>>>>
>>>>>>> Thanks
>>>>>>>
>>>>>>> --
>>>>>>> Antonio Goncalves
>>>>>>> Software architect
and
>>>>>>> Java Champion
>>>>>>>
>>>>>>> Web site
>>>>>>>
<
http://www.antoniogoncalves.org/> |
>>>>>>> Twitter
>>>>>>>
<
http://twitter.com/agoncal> |
>>>>>>> LinkedIn
>>>>>>>
<
http://www.linkedin.com/in/agoncal> |
>>>>>>> Paris JUG
>>>>>>>
<
http://www.parisjug.org/> |
>>>>>>> Devoxx France
>>>>>>>
<
http://www.devoxx.fr/>
>>>>>>>
_______________________________________________
>>>>>>> forge-dev mailing
list
>>>>>>>
forge-dev(a)lists.jboss.org
>>>>>>>
<mailto:forge-dev@lists.jboss.org>
>>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>
>>>>>>
_______________________________________________
>>>>>> forge-dev mailing list
>>>>>> forge-dev(a)lists.jboss.org
<mailto:forge-dev@lists.jboss.org>
>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Antonio Goncalves
>>>>>> Software architect and Java
>>>>>> Champion
>>>>>>
>>>>>> Web site
>>>>>>
<
http://www.antoniogoncalves.org/> |
>>>>>> Twitter
>>>>>>
<
http://twitter.com/agoncal> |
>>>>>> LinkedIn
>>>>>>
<
http://www.linkedin.com/in/agoncal> |
>>>>>> Paris JUG
>>>>>>
<
http://www.parisjug.org/> |
>>>>>> Devoxx France
>>>>>>
<
http://www.devoxx.fr/>
>>>>>>
_______________________________________________
>>>>>> forge-dev mailing list
>>>>>> forge-dev(a)lists.jboss.org
>>>>>>
<mailto:forge-dev@lists.jboss.org>
>>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>
>>>>>
_______________________________________________
>>>>> forge-dev mailing list
>>>>> forge-dev(a)lists.jboss.org
>>>>>
<mailto:forge-dev@lists.jboss.org>
>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Antonio Goncalves
>>>>> Software architect and Java Champion
>>>>>
>>>>> Web site
>>>>>
<
http://www.antoniogoncalves.org/> |
>>>>> Twitter
>>>>> <
http://twitter.com/agoncal> |
>>>>> LinkedIn
>>>>>
<
http://www.linkedin.com/in/agoncal> |
>>>>> Paris JUG
>>>>> <
http://www.parisjug.org/> |
>>>>> Devoxx France
>>>>> <
http://www.devoxx.fr/>
>>>>>
_______________________________________________
>>>>> forge-dev mailing list
>>>>> forge-dev(a)lists.jboss.org
>>>>>
<mailto:forge-dev@lists.jboss.org>
>>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>
>>>>
_______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev(a)lists.jboss.org
>>>> <mailto:forge-dev@lists.jboss.org>
>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Antonio Goncalves
>>>> Software architect and Java Champion
>>>>
>>>> Web site
>>>> <
http://www.antoniogoncalves.org/> |
>>>> Twitter <
http://twitter.com/agoncal> |
>>>> LinkedIn
>>>> <
http://www.linkedin.com/in/agoncal> |
>>>> Paris JUG <
http://www.parisjug.org/> |
>>>> Devoxx France <
http://www.devoxx.fr/>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Antonio Goncalves
>>>> Software architect and Java Champion
>>>>
>>>> Web site
>>>> <
http://www.antoniogoncalves.org/> |
>>>> Twitter <
http://twitter.com/agoncal> |
>>>> LinkedIn
>>>> <
http://www.linkedin.com/in/agoncal> |
>>>> Paris JUG <
http://www.parisjug.org/> |
>>>> Devoxx France <
http://www.devoxx.fr/>
>>>>
>>>> _______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev(a)lists.jboss.org
>>>> <mailto:forge-dev@lists.jboss.org>
>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev(a)lists.jboss.org
>>>> <mailto:forge-dev@lists.jboss.org>
>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Antonio Goncalves
>>>> Software architect and Java Champion
>>>>
>>>> Web site <
http://www.antoniogoncalves.org/> |
>>>> Twitter <
http://twitter.com/agoncal> | LinkedIn
>>>> <
http://www.linkedin.com/in/agoncal> | Paris JUG
>>>> <
http://www.parisjug.org/> | Devoxx France
>>>> <
http://www.devoxx.fr/>
>>>> _______________________________________________
>>>> forge-dev mailing list
>>>> forge-dev(a)lists.jboss.org
>>>> <mailto:forge-dev@lists.jboss.org>
>>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev(a)lists.jboss.org
>>> <mailto:forge-dev@lists.jboss.org>
>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>>
>>>
>>>
>>>
>>> --
>>> Antonio Goncalves
>>> Software architect and Java Champion
>>>
>>> Web site <
http://www.antoniogoncalves.org/> | Twitter
>>> <
http://twitter.com/agoncal> | LinkedIn
>>> <
http://www.linkedin.com/in/agoncal> | Paris JUG
>>> <
http://www.parisjug.org/> | Devoxx France
>>> <
http://www.devoxx.fr/>
>>> _______________________________________________
>>> forge-dev mailing list
>>> forge-dev(a)lists.jboss.org
>>> <mailto:forge-dev@lists.jboss.org>
>>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev(a)lists.jboss.org <mailto:forge-dev@lists.jboss.org>
>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>>
>>
>>
>>
>> --
>> Antonio Goncalves
>> Software architect and Java Champion
>>
>> Web site <
http://www.antoniogoncalves.org/> | Twitter
>> <
http://twitter.com/agoncal> | LinkedIn
>> <
http://www.linkedin.com/in/agoncal> | Paris JUG
>> <
http://www.parisjug.org/> | Devoxx France
>> <
http://www.devoxx.fr/>
>> _______________________________________________
>> forge-dev mailing list
>> forge-dev(a)lists.jboss.org <mailto:forge-dev@lists.jboss.org>
>>
https://lists.jboss.org/mailman/listinfo/forge-dev
>
> _______________________________________________
> forge-dev mailing list
> forge-dev(a)lists.jboss.org <mailto:forge-dev@lists.jboss.org>
>
https://lists.jboss.org/mailman/listinfo/forge-dev
>
>
>
>
> --
> Antonio Goncalves
> Software architect and Java Champion
>
> Web site <
http://www.antoniogoncalves.org/> | Twitter
> <
http://twitter.com/agoncal> | LinkedIn
> <
http://www.linkedin.com/in/agoncal> | Paris JUG
> <
http://www.parisjug.org/> | Devoxx France <
http://www.devoxx.fr/>
> _______________________________________________
> forge-dev mailing list
> forge-dev(a)lists.jboss.org <mailto:forge-dev@lists.jboss.org>
>
https://lists.jboss.org/mailman/listinfo/forge-dev
--
Antonio Goncalves
Software architect and Java Champion
Web site <
http://www.antoniogoncalves.org/> | Twitter
<
http://twitter.com/agoncal> | LinkedIn
<
http://www.linkedin.com/in/agoncal> | Paris JUG
<
http://www.parisjug.org/> | Devoxx France <
http://www.devoxx.fr/>