I just created an account in Jira and got confirmation mail.. However I am not able to login to Jira. It says wrong user name and password.
I just fixed this issue and wanted to create a Jira and submit patch..
Anyway, I am atteching it here.
I have introduced dependency to Common beanutils into BaseControllerTestCase..
Hope this wouldnt be any problem.
I ran all tests and it seems to work.
Have a look.
Thanks
Sudhir NimavatSenior software engineer.
Quick start global PVT LTD.
Baroda - 390007
Gujarat, India
Personally I'm always ready to learn, although I do not always like being taught
________________________________
From: Matt Raible <[email protected]>
To: [email protected]
Sent: Thu, 19 November, 2009 6:15:10 PM
Subject: Re: [appfuse-user] Re: Generated Web tests won't work when entities
have members with prefix _ (underscore)
On Thu, Nov 19, 2009 at 7:40 AM, Sudhir N <[email protected]> wrote:
> Thanks Matt,
>
> I did clean build and it started working, without me doing any thing else :)
>
> Did u read my another query ( members with prefix _ (underscore)
Yes, I did see this. I'm not sure how to fix, but it should be logged
as a bug in JIRA. If you get a chance, you might want to dig into the
source code and try to fix it.
http://source.appfuse.org/browse/appfuse/trunk/web/spring/src/test/java/org/appfuse/webapp/controller/BaseControllerTestCase.java?r=HEAD
Matt
>
>
> Thanks
> SN
>
>
>
> Personally I'm always ready to learn, although I do not always like being
> taught
>
>
> ________________________________
> From: Matt Raible <[email protected]>
> To: [email protected]
> Sent: Thu, 19 November, 2009 5:46:18 PM
> Subject: Re: [appfuse-user] Re: Generated Web tests won't work when entities
> have members with prefix _ (underscore)
>
> On Thu, Nov 19, 2009 at 6:49 AM, Sudhir N <[email protected]> wrote:
>> Tests are passing now (I just commented those two lines for now)
>>
>> Generated CRUD and tried to access Profile list page..
>> Got following exception (I use JPA)
>>
>> org.springframework.web.util.NestedServletException: Request processing
>> failed; nested exception is java.lang.NullPointerException
>> Caused by: java.lang.NullPointerException
>> at org.appfuse.dao.jpa.GenericDaoJpa.getAll(GenericDaoJpa.java:59)
>> at
>>
>> org.appfuse.service.impl.GenericManagerImpl.getAll(GenericManagerImpl.java:68)
>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>> at
>>
>> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
>> at
>>
>> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
>> at
>> java.lang.reflect.Method.invoke(Method.java:585)
>> at
>>
>> org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:296)
>> at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:177)
>> at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:144)
>> at
>>
>> org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
>> at
>>
>> org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:166)
>> at
>>
>> org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
>> at $Proxy43.getAll(Unknown Source)
>> at
>>
>> com.ramanandi.matri.webapp.controller.ProfileController.handleRequest(ProfileController.java:22)
>> at
>>
>>
>> org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:48)
>> at
>>
>> org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:857)
>> at
>>
>> org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:792)
>> at
>>
>> org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:475)
>> at
>>
>> org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:430)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
>> at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
>> at
>> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487)
>> at
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:362)
>> at
>>
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> at
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>> at
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
>> at
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>> at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:224)
>> at org.mortbay.jetty.servlet.Dispatcher.forward(Dispatcher.java:126)
>> at
>>
>> org.appfuse.webapp.filter.StaticFilter.doFilterInternal(StaticFilter.java:102)
>> at
>>
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
>> at
>>
>> com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
>> at
>> org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
>> at
>>
>> org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
>> at
>>
>> org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:406)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> org.displaytag.filter.ResponseOverrideFilter.doFilter(ResponseOverrideFilter.java:125)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> net.sf.ehcache.constructs.web.filter.GzipFilter.doFilter(GzipFilter.java:75)
>> at
>> net.sf.ehcache.constructs.web.filter.Filter.doFilter(Filter.java:92)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> org.appfuse.webapp.filter.LocaleFilter.doFilterInternal(LocaleFilter.java:74)
>> at
>>
>>
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> com.opensymphony.clickstream.ClickstreamFilter.doFilter(ClickstreamFilter.java:42)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:265)
>> at
>>
>> org.acegisecurity.intercept.web.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:107)
>> at
>>
>> org.acegisecurity.intercept.web.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:72)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>> org.acegisecurity.ui.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:166)
>> at
>>
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>> org.acegisecurity.providers.anonymous.AnonymousProcessingFilter.doFilter(AnonymousProcessingFilter.java:125)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>> org.acegisecurity.ui.rememberme.RememberMeProcessingFilter.doFilter(RememberMeProcessingFilter.java:142)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>> org.acegisecurity.wrapper.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:81)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>> org.acegisecurity.ui.AbstractProcessingFilter.doFilter(AbstractProcessingFilter.java:271)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>>
>> org.acegisecurity.context.HttpSessionContextIntegrationFilter.doFilter(HttpSessionContextIntegrationFilter.java:249)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:275)
>> at
>>
>> org.acegisecurity.util.FilterChainProxy.doFilter(FilterChainProxy.java:149)
>> at
>>
>> org.acegisecurity.util.FilterToBeanProxy.doFilter(FilterToBeanProxy.java:98)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>>
>> org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:96)
>> at
>>
>> org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:75)
>> at
>>
>> org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084)
>> at
>> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360)
>> at
>>
>> org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
>> at
>> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
>> at
>> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712)
>> at
>> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405)
>> at
>>
>> org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:211)
>> at
>>
>> org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
>> at
>> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
>> at org.mortbay.jetty.Server.handle(Server.java:313)
>> at
>> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506)
>> at
>>
>> org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830)
>> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514)
>> at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211)
>> at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381)
>> at
>>
>>
>> org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396)
>> at
>>
>> org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
>>
>>
>> Seems that entityManager isnt getting injected into...
>>
>> Is there any way to configure mvn jetty:run-war for remote debuggin with
>> eclipse?
>
> Yes, you should be able to setup the remote debugger and then copy
> those settings into a MAVEN_OPTS environment variable, then run "mvn
> jetty:run-war".
>
> Here's a detailed explanation:
>
> http://www.mojavelinux.com/blog/archives/2007/03/remote_debugging_with_jetty/
>
> Matt
>
>>
>> Thanks
>> Sudhir
>>
>>
>> Personally I'm always ready to learn, although I do not always like being
>> taught
>>
>>
>> ________________________________
>> From: Sudhir N <[email protected]>
>> To: Appfuse <[email protected]>
>> Sent: Thu, 19 November, 2009 4:28:28 PM
>> Subject: Generated Web tests won't work when entities have members with
>> prefix _ (underscore)
>>
>> I think this is a catch in
>> BaseControllerTestCase.objectToRequestParameters()
>>
>> When I instance variables are prefixed with underscore Controller test for
>> form submission will fail.
>>
>> Appfuse would create mock request with parameters which are prefixed with
>> underscore and spring (WebDataBinder)would not bind those parameters but
>> instead set to null.
>>
>> Here's an example
>>
>> I have a Profile entity
>>
>> @Entity
>> @Table(name="profiles")
>> public class Profile {
>>
>> private Long _id;
>> private int _age;
>> private Date _dob;
>>
>> public Profile() {
>>
>> }
>>
>> @Id
>> @GeneratedValue(strategy=GenerationType.AUTO)
>> public Long getId() {
>> return _id;
>> }
>>
>> public void setId(Long id) {
>> _id = id;
>> }
>>
>> @Column(name="age")
>> public int getAge() {
>> return _age;
>> }
>>
>> public void setAge(int age) {
>> _age = age;
>> }
>>
>> @Column(name="dob")
>> public Date getDob() {
>> return _dob;
>> }
>>
>> public void setDob(Date dob) {
>> _dob = dob;
>> }
>>
>>
>> }
>>
>> I have to prefix all the instance variables with underscore.. this is a
>> coding convention in our organization and I can not change it.
>>
>> I generated CRUD using AMP and run tests.. but tests failed.. there were
>> few
>> problems
>>
>> 1. AMP created following empty form tag into validation.xml which caused
>> SAXParserException when loading application context
>> <form name="profile">
>> </form>
>> <!--Profile-END-->
>>
>> An empty form tag is not allowed it must have at least one child <field>.
>> Either AMP should not put this form tag into validation.xml at all if no
>> field requires validation, or I dont knw.. :)
>>
>> <form name="profile">
>> <field property="age" depends="required">
>> <arg0 key="profile.age"/>
>> </field>
>> </form>
>> <!--Profile-END-->
>>
>>
>> 2. ProfileFormControllerTest fails
>> Errors errors = (Errors)
>> mv.getModel().get(BindException.MODEL_KEY_PREFIX + "profile");
>> assertNull(errors);
>>
>> assertion fails because There are binding errors.. Appfuse had created
>> mock
>> request with paramaters prefixed with underscore which caused
>> WebDataBinder
>> to ignore it and hence...
>>
>>
>>
>>
>> Personally I'm always ready to learn, although I do not always like being
>> taught
>>
>>
>> ________________________________
>> The INTERNET now has a personality. YOURS! See your Yahoo! Homepage.
>> ________________________________
>> The INTERNET now has a personality. YOURS! See your Yahoo! Homepage.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>
>
> ________________________________
> The INTERNET now has a personality. YOURS! See your Yahoo! Homepage.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]
The INTERNET now has a personality. YOURS! See your Yahoo! Homepage.
http://in.yahoo.com/
patch.diff
Description: Binary data
--------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
