|
|
|
Matt Raible-3
|
Hello everyone - hopefully you're having a great holiday break if
you're celebrating. My vacation begins in a few hours and I hope to get a lot of (downhill) skiing in over the next several days[1]. I just wanted to send you a quick note to let you know we're all still hard at work on AppFuse 2.0. We're actually pretty close to finishing up our goals for M2[2], but we haven't written as much documentation as we'd like, hence the lack of an M1 release. I was hoping to get 2.0-M1 out by the end of the year, but it doesn't look like it'll happen. We only have around 20 issues[3] to finish for the release, but most developers are on vacation for the next week or more. With any luck, we'll have a release out in the first half of January. The main thing that's going to take a while is me writing documentation. If you're interested in using 2.0 now, you can certainly ask questions (please search first!) on the dev mailing list[4], or view the QuickStart Guide at http://dev.appfuse.org/display/APF/QuickStart+Guide. In order to show you what we have in mind with AppFuse 2.0, I created a "Hello World" video. You can view it at: http://static.appfuse.org/movies/2.0/helloworld.mov (20.5 MB) I created a similar one showing how to do CRUD a few weeks ago. Please keep in mind we've changed some things since I made this - but it should give you a good idea how we've simplified the backend with Generic Managers and DAOs. http://static.appfuse.org/movies/2.0/struts2-crud.mov (17.3 MB) If you'd rather download these movies than view them online, you can do that as well: http://static.appfuse.org/movies/2.0/2.0-videos.zip (36.1 MB) Thanks for using AppFuse! Matt [1] http://raibledesigns.com/page/rd?entry=heading_to_steamboat [2] http://raibledesigns.com/wiki/AppFuseRoadmap.html [3] http://tinyurl.com/y6npzr [4] http://www.nabble.com/AppFuse---Dev-f2371.html -- http://raibledesigns.com --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
|
thomas_ramapuram
|
Hi Matt,
I was looking at your video in appfuse 2.0 and I noticed that you had autocomplete for some portions of your pom and action in IDEA. Which is the tool/plugin that you use for this? Thanks, Thomas. Matt Raible wrote: > Hello everyone - hopefully you're having a great holiday break if > you're celebrating. My vacation begins in a few hours and I hope to > get a lot of (downhill) skiing in over the next several days[1]. > > I just wanted to send you a quick note to let you know we're all still > hard at work on AppFuse 2.0. We're actually pretty close to finishing > up our goals for M2[2], but we haven't written as much documentation > as we'd like, hence the lack of an M1 release. > > I was hoping to get 2.0-M1 out by the end of the year, but it doesn't > look like it'll happen. We only have around 20 issues[3] to finish > for the release, but most developers are on vacation for the next week > or more. With any luck, we'll have a release out in the first half of > January. The main thing that's going to take a while is me writing > documentation. If you're interested in using 2.0 now, you can > certainly ask questions (please search first!) on the dev mailing > list[4], or view the QuickStart Guide at > http://dev.appfuse.org/display/APF/QuickStart+Guide. > > In order to show you what we have in mind with AppFuse 2.0, I created > a "Hello World" video. You can view it at: > > http://static.appfuse.org/movies/2.0/helloworld.mov (20.5 MB) > > I created a similar one showing how to do CRUD a few weeks ago. > Please keep in mind we've changed some things since I made this - but > it should give you a good idea how we've simplified the backend with > Generic Managers and DAOs. > > http://static.appfuse.org/movies/2.0/struts2-crud.mov (17.3 MB) > > If you'd rather download these movies than view them online, you can > do that as well: > > http://static.appfuse.org/movies/2.0/2.0-videos.zip (36.1 MB) > > Thanks for using AppFuse! > > Matt > > [1] http://raibledesigns.com/page/rd?entry=heading_to_steamboat > [2] http://raibledesigns.com/wiki/AppFuseRoadmap.html > [3] http://tinyurl.com/y6npzr > [4] http://www.nabble.com/AppFuse---Dev-f2371.html > --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
|
Matt Raible-3
|
These are IDEA's "Live Templates" feature.
http://blogs.opensymphony.com/plightbo/2006/02/idea_live_templates_more_power.html http://www.jetbrains.com/idea/docs/help/editing/livetemplates/predeftemplates.html It doesn't make sense to make them publicly available unless I added variables where appropriate. I've attached the file in case anyone wants to make these changes. ;-) Matt On 12/26/06, Thomas Ramapuram <[hidden email]> wrote: Hi Matt, -- http://raibledesigns.com <?xml version="1.0" encoding="UTF-8"?> <templateSet group="appfuse2"> <template name="HelloAction.java" value="public class HelloAction extends ActionSupport { String message; public String getMessage() { return message; } public String execute() { message = "Howdy Pardner!"; return SUCCESS; } }" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="true" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="Person" value="@Entity public class Person { Long id; String firstName; String lastName; @Id @GeneratedValue(strategy=GenerationType.AUTO) public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getFirstName() { return firstName; } public void setFirstName(String firstName) { this.firstName = firstName; } public String getLastName() { return lastName; } public void setLastName(String lastName) { this.lastName = lastName; } }" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="true" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="PersonAction" value="public class PersonAction extends BaseAction { GenericManager<Person, Long> manager; Person person; Long id; public void setId(Long id) { this.id = id; } public void setPersonManager(GenericManager<Person, Long> genericManager) { this.manager = genericManager; } public Person getPerson() { return person; } public void setPerson(Person person) { this.person = person; } public String execute() { if (id != null) { person = manager.get(id); } return "success"; } public String save() { manager.save(person); super.saveMessage("Person updated successfully!"); return "form"; } }" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="true" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="delete" value="public String delete() { manager.remove(person.getId()); saveMessage(MessageFormat.format("{0} removed successfully.", person.getFirstName() + ' ' + person.getLastName())); return "form"; }" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="true" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="deleteButton" value="<s:submit method="delete" value="Delete" cssClass="button"/>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="true" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="focus" value="Form.focusFirstElement('person');" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="true" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="hbm2ddl" value="hibernate.hbm2ddl.auto=update" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="true" /> </context> </template> <template name="hello.jsp" value="<%@ include file="/common/taglibs.jsp"%> <s:action name="howdy" id="action" namespace="default"/> <strong>Message from Struts:</strong> <span style="color: blue"><s:property value="#action.message"/></span>" description="" toReformat="false" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="true" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="hibernateExtension" value="<bean class="org.appfuse.dao.spring.HibernateExtensionPostProcessor"> <property name="annotatedClasses"> <list> <value>org.appfuse.crud.model.Person</value> </list> </property> </bean>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="include" value="<%@ include file="/common/taglibs.jsp"%>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="true" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="list" value="public String list() { persons = manager.getAll(); return SUCCESS; }" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="true" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="person" value="<action name="person" class="personAction"> <result>/WEB-INF/pages/person.jsp</result> <result name="form" type="redirect">person.html</result> </action>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="person.jsp" value="<%@ include file="/common/taglibs.jsp" %> <title>Person Example</title> <p>Please use the form below to modify a person's information.</p> <s:form name="personForm" action="person" method="post" validate="true"> <s:hidden name="person.id" value="%{person.id}"/> <s:textfield label="First Name" name="person.firstName" value="%{person.firstName}" required="true" cssClass="text medium"/> <s:textfield label="Last Name" name="person.lastName" value="%{person.lastName}" required="true" cssClass="text medium"/> <li class="buttonBar left"> <s:submit method="save" value="Save" cssClass="button"/> </li> </s:form>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="true" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="person.list" value="<div style="margin-top: 50px"> <s:action name="person!list" id="action" namespace="default"/> <strong>Current folks:</strong> <ul class="glassList"> <s:iterator value="#action.persons"> <li><s:a href="person.html?id=%{id}"><s:property value="firstName"/> <s:property value="lastName"/></s:a></li> </s:iterator> </ul> </div>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="false" /> <option name="HTML" value="false" /> <option name="JSP" value="true" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="personAction" value="<bean id="personAction" class="org.appfuse.crud.action.PersonAction" scope="prototype"> <property name="personManager" ref="personManager"/> </bean>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="personManager" value="<bean id="personManager" class="org.appfuse.service.impl.GenericManagerImpl"> <constructor-arg> <bean class="org.appfuse.dao.hibernate.GenericDaoHibernate" autowire="byType"> <constructor-arg value="org.appfuse.crud.model.Person"/> </bean> </constructor-arg> </bean>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="pom.xml.dependencies" value="<dependencies> <dependency> <groupId>org.appfuse</groupId> <artifactId>appfuse-struts</artifactId> <version>2.0-SNAPSHOT</version> <type>war</type> </dependency> <dependency> <groupId>org.appfuse</groupId> <artifactId>appfuse-struts</artifactId> <version>2.0-SNAPSHOT</version> <type>warpath</type> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="pom.xml.java5" value="<plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="pom.xml.jetty" value="<plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <configuration> <scanIntervalSeconds>3</scanIntervalSeconds> </configuration> </plugin>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="pom.xml.plugins" value="<build> <defaultGoal>package</defaultGoal> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.5</source> <target>1.5</target> </configuration> </plugin> <plugin> <groupId>org.mortbay.jetty</groupId> <artifactId>maven-jetty-plugin</artifactId> <configuration> <contextPath>/</contextPath> <scanIntervalSeconds>3</scanIntervalSeconds> </configuration> </plugin> <plugin> <groupId>org.appfuse</groupId> <artifactId>maven-warpath-plugin</artifactId> <version>1.0-SNAPSHOT</version> <extensions>true</extensions> <executions> <execution> <goals> <goal>add-classes</goal> </goals> </execution> </executions> </plugin> </plugins> </build>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="pom.xml.struts2" value="<dependency> <groupId>org.appfuse</groupId> <artifactId>appfuse-struts</artifactId> <version>2.0-SNAPSHOT</version> <type>war</type> </dependency> <dependency> <groupId>org.appfuse</groupId> <artifactId>appfuse-struts</artifactId> <version>2.0-SNAPSHOT</version> <type>warpath</type> </dependency>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="pom.xml.warpath" value="<plugin> <groupId>org.appfuse</groupId> <artifactId>maven-warpath-plugin</artifactId> <version>1.0-SNAPSHOT</version> <extensions>true</extensions> <executions> <execution> <goals> <goal>add-classes</goal> </goals> </execution> </executions> </plugin>" description="" toReformat="true" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> <template name="howdy" value="<action name="howdy" class="com.company.webapp.HelloAction"/>" description="" toReformat="false" toShortenFQNames="true"> <context> <option name="JAVA_CODE" value="false" /> <option name="JAVA_COMMENT" value="false" /> <option name="JAVA_STRING" value="false" /> <option name="XML" value="true" /> <option name="HTML" value="false" /> <option name="JSP" value="false" /> <option name="COMPLETION" value="false" /> <option name="OTHER" value="false" /> </context> </template> </templateSet> --------------------------------------------------------------------- To unsubscribe, e-mail: [hidden email] For additional commands, e-mail: [hidden email] |
||||||||||||||||
| Free Embeddable Forum Powered by Nabble | Help |