Hey Paul, Awesome! I did just push some changes to that respect. Sounds like yours is a lot better than mine. Sounds like we had very similar solutions :D but I think you probably also incorporated the facet inheritance approach? How is that working? Would be a good thing to write down as a recommended pattern if it works well!
Sorry, I should have told you I was starting some work on it.
I also fixed a few issues with the web.xml configuration. Looks like this was preserved in your merge, just want to make sure?
This dependency is not required and should be removed (I had done that in my commits:)
DependencyBuilder.create("org.jboss.spec.javax.xml.bind:jboss-jaxb-api_2.2_spec")Additionally, this line was actually incorrectly modifying existing servlet mappings, which was why I corrected it.
Node servletClass = node.getOrCreate("servlet-mapping/servlet-name=" + JAXRS_SERVLET);
Hi!I just pushed the new REST plugin to master. JAX-RS can now be configured by either the web.xml like before, or an Application class.It's now also using the TreeVisiting API, but only if it finds that configuration is missing or is invalid. So if the configuration is not in sync because of refactoring for example, the plugin will notice this and fix it's configuration by scanning the project's classes. As long as the configuration is still correct, it will not rescan classes. By using the configuration API as a cache I hope the performance penalty of scanning classes will be minimized. We still should test this better on large projects however, but that's out of the scope of this issue.PaulOn Mar 9, 2012, at 19:43 , Lincoln Baxter, III wrote:Hey Paul,
How is this coming along? I only ask because it came up from the tools team that Forge has trouble detecting apps using the REST @Application() annotation.
I hope all is well!
~LincolnOn Mon, Feb 27, 2012 at 3:09 PM, Lincoln Baxter, III <lincolnbaxter@gmail.com> wrote:Yep! Glad to be back, though :)
I think it might be a good idea to watch the performance of this operation, though. It could get expensive for large projects, so it might be a good idea to only do this check when necessary, and store the result in forge project scoped config. We are becoming an IDE :)
Will be complicated I think, or slow...
~LincolnOn Mon, Feb 27, 2012 at 11:14 AM, Paul Bakker <paul.bakker@luminis.eu> wrote:
Hi! Had a good time?The new API looks really good to use here, didn't know we could do that… I wasn't too happy with using configuration for this, because it will break on refactoring, so it's much better is we can do it this way. I will look into it to use it.
Paul
On Feb 27, 2012, at 17:09 , Lincoln Baxter, III wrote:
_______________________________________________Hey Paul!
Back from Vaca.
My first thought here is that this is excellent use of the Configuration API, but I think currently the way this is written, it depends on the Configuration in order to recognize the fact that there is an application class serving as a REST activator?
We could use the JavaParser TreeVisiting API that was just introduced, in order to search project sources and make this determination.
https://github.com/forge/core/blob/master/shell-api/src/main/java/org/jboss/forge/project/facets/JavaSourceFacet.java#L165
Thoughts?
~Lincoln
On Wed, Feb 15, 2012 at 5:48 PM, Paul Bakker <paul.bakker@luminis.eu> wrote:
Hi Lincoln,
I made some progress on refactoring the rest stuff, plus I added the option to use an Application class instead of web.xml. Because it changed quite a lot and this is the first time we use the idea of having "nested" facets it would probably be good if you review before I merge to master.
https://github.com/forge/core/commit/ec0275a821c6bb3ccf690b55d66816073ba0c328
Let me know what you think :-)
Paul
--
Lincoln Baxter, III
http://ocpsoft.com
http://scrumshark.com
"Keep it Simple"
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev
_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev
--
Lincoln Baxter, III
http://ocpsoft.com
http://scrumshark.com
"Keep it Simple"
--
Lincoln Baxter, III
http://ocpsoft.com
http://scrumshark.com
"Keep it Simple"
_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev
_______________________________________________
forge-dev mailing list
forge-dev@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/forge-dev