首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >以内类为参数的弹簧控制器

以内类为参数的弹簧控制器
EN

Stack Overflow用户
提问于 2016-10-05 16:07:01
回答 1查看 1.9K关注 0票数 1

我有一个Spring控制器,它的方法映射为请求:

代码语言:javascript
运行
复制
@RequestMapping(value = "/album", method = RequestMethod.POST)
public void generateAlbum(GenerateAlbumParams params, HttpServletResponse response){
...
}

GenerateAlbumParams是一个简单的类:

代码语言:javascript
运行
复制
@Getter
@Setter
public class GenerateAlbumParams {

    public enum Position {LEFT_TOP, LEFT_BOTTOM, RIGHT_TOP, RIGHT_BOTTOM}
    private List<SlideParams> slideParams = new ArrayList<>();
}

SlideParams是:

代码语言:javascript
运行
复制
@Getter
@Setter
public class SlideParams{
    private Boolean checked = false;
    private Long id;
    private GenerateAlbumParams.Position mapLegendPosition;
    private GenerateAlbumParams.Position mapTablePosition;
}

一切都很好,但是如果我想让SlideParams成为的内部类

代码语言:javascript
运行
复制
@Getter
@Setter
public class GenerateAlbumParams {

    public enum Position {LEFT_TOP, LEFT_BOTTOM, RIGHT_TOP, RIGHT_BOTTOM}
    private List<SlideParams> slideParams = new ArrayList<>();

    @Getter
    @Setter
    public class SlideParams{
        private Boolean checked = false;
        private Long id;
        private Position mapLegendPosition;
        private Position mapTablePosition;
    }
}

它提出了一个例外:

HTTP状态500 -请求处理失败;嵌套异常是org.springframework.beans.InvalidPropertyException:无效属性'slideParams‘of bean class xxx.GenerateAlbumParams:非法尝试获取属性'slideParams’抛出的异常;嵌套异常是org.springframework.beans.NullValueInNestedPathException:无效属性'slideParams‘of bean class xxx.GenerateAlbumParams:无法实例化属性类型xxx.GenerateAlbumParams$SlideParams以自动生成嵌套属性路径;嵌套异常是org.springframework.beans.BeanInstantiationException:未能实例化xxx.GenerateAlbumParams$SlideParams:它是一个抽象类吗?嵌套异常是java.lang.InstantiationException: xxx.GenerateAlbumParams$SlideParams

EN

Stack Overflow用户

回答已采纳

发布于 2016-10-05 16:22:53

似乎您应该将内部类设置为static,这样就可以在不引用任何外部类对象的情况下实例化它(例如new GenerateAlbumParams.SlideParams() )。

票数 6
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39878907

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档