Spring AOP忽略Hessian Service的一些方法

2024-01-04

我有一个具有以下切入点定义的方面

@Pointcut("execution(public de.company.project..* *(..))")

以及包含以下内容的弹簧配置

<aop:aspectj-autoproxy />

<bean id="myaspect"
        class="de.company.project.impl.MyAspect" />

<bean id="someService" class="de.company.project.impl.SomeService" />

<bean name="/SomeService"
    class="org.springframework.remoting.caucho.HessianServiceExporter">
    <property name="service" ref="someService" />
    <property name="serviceInterface"
        value="de.company.project.interf.SomeService" />
</bean>

(真实配置中有多个服务)

我看到在某些方法中调用了方面,但不是在所有方法中都被调用。我怀疑(但还不完全确定)只有直接在接口中声明的方法被包装在方面中,并且在超级接口中声明的方法被忽略(尽管该接口应该匹配相同的切入点)。

这是预期的行为吗?我怎样才能改变它?还可能发生什么?


只是一个猜测。我没有证据证明这可能是您设置中的实际原因。

我知道Spring AOP不会拦截本地方法调用。 IE。如果同一对象调用自己的方法,即使它与切入点表达式匹配,所应用的代理也不会拦截调用。

编辑:另一个猜测。您确定相关类的所有实例都是 Spring 托管代码吗?您的代码(或某些库)的某些部分是否有可能在不使用 Spring 的情况下创建类的实例? 如果发生这种情况,Spring AOP 无法拦截此类 bean,因为 Spring AOP 仅围绕 Spring 管理的 bean 编织。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring AOP忽略Hessian Service的一些方法 的相关文章

随机推荐

  • WPF - 在代码隐藏中更改网格中控件的位置

    是否可以从代码隐藏更改控件在网格中的放置位置 例如 如果我在 Grid Row 1 中有一个按钮 我可以将其从代码隐藏更改为 Grid Row 0 吗 是的 去吧 Grid SetRow button 0 其中 button 是要更改的元素
  • 依赖注入wcf

    我想在 WCF 中注入接口的实现 但我想在 WCF 客户端中初始化依赖注入容器 因此 我可以为我的服务的每个客户端提供不同的实现 当你使用svcutil exe or the 添加服务参考在 Visual Studio 中的向导中 自动生成
  • 为什么这个 %2B 字符串会被 urldecode ?

    这可能不完全是一个编程问题 但它是一个最好由程序员来回答的难题 我首先在专业网站管理员网站上尝试过 结果一片寂静 我们的网站上有电子邮件地址验证流程 该站点首先生成一个适当的密钥作为字符串 mykey 然后将该密钥编码为一堆字节 dac 然
  • jQuery 拖放到文本区域

    使用 jQuery 并希望让用户将占位符拖到文本区域中 每个占位符都是一个 span 其中有一个class placeholder 文本区域id简直就是 main text 因此 用户应该能够拖动每个占位符span将其放在文本区域顶部 然后
  • 我可以为多个 Meteor 应用程序使用同一个数据库吗?

    用例 我构建的应用程序app foo com 以及望远镜的实例community foo com 在单独的应用程序服务器上 他们唯一分享的收藏是users 我会给这两个应用程序提供相同的 mongo url 和 oplog url 并确保除
  • LyX->Rnw 转换会自动在重复的“<”字符之间插入连字符

    标题说明了一切 下面的屏幕截图给出了血淋淋的细节 临时缓冲区文件夹中的 Rnw 文件与图像中的 LaTeX Source 相同 正如您可以想象的 knit 不会编织this废话 我一生都无法弄清楚如何让这些结扎断裂消失 所以我想我的问题是
  • 计算卷积神经网络中特征图的维度

    我在 Keras 中有卷积神经网络 我需要知道每层特征图的尺寸 我的输入是 28 x 28 像素图像 我知道有一种方法可以计算这个我不知道如何 下面是我使用 Keras 的代码片段 img rows img cols 28 28 nb fi
  • 将包含指向另一个结构的指针的结构传递给 CUDA 中的内核

    我有两个结构 struct collapsed char seq int num struct data collapsed x int num int numblocks int blocksizes float regmult floa
  • ARPACK 线程安全吗?

    使用是否安全ARPACK http www caam rice edu software ARPACK用 C 编写的程序同时来自不同线程的特征求解器 或者 如果 ARPACK 本身不是线程安全的 那么是否有一个与 API 兼容的线程安全实现
  • 将 html ID 添加到 Rails 选择选项

    我们正在使用simple form并尝试添加一个id对每一个特定的select tag s选项 这是我们的选择 这就是它的内容can添加后看起来像id ids
  • Ace 编辑器不会格式化编辑器 div 内的数据

    我嵌入了一些JSON编辑器 div 内的数据 就像这里 http jsfiddle net P3TwV 11 http jsfiddle net P3TwV 11 但如小提琴所示 JSON 没有被格式化 它只是将数据放在一行中 我希望我在单
  • 微软的OpenMP自旋锁时间如何控制?

    Intel编译器使用的OpenMP支持环境变量KMP BLOCKTIME docs http software intel com sites products documentation doclib iss 2013 compiler
  • 以编程方式激活焦点辅助 Windows 10 设置 C#

    我正在构建一个 C WPF 应用程序 并且希望能够以编程方式启用和禁用 Windows 系统功能Focus Assist 我尝试研究如何以编程方式控制此功能 但看不到任何内容 可能是因为它是一个新的系统功能 我看过关于使用的注释Window
  • “渲染@collection”有什么作用?

    我试图通过查看示例应用程序来更好地学习 Rails 同时查看这条线来自railscasts com的来源 http github com ryanb railscasts blob master app views episodes ind
  • Apollo 客户端 - 使用对象列表中的缓存结果来响应单个对象的查询

    是否可以将 Apollo 客户端配置为从返回项目列表的查询中获取单个缓存的项目 以便在查询单个项目时预取数据 Schema type Item id ID name String type Query items Item itemById
  • Sqlalchemy:更新...限制 1,不可能吗?

    在 MySQL 中 可以限制更新查询影响的记录数量 在理想的情况下 这应该是没有必要的 但在某些情况下 有这样的限制确实有助于节省你的培根 我本以为在 SQLAlchemy 中它可以通过以下方式实现 tgt meta tables ps p
  • 什么 powershell 动词适合重新加载用户配置文件?

    我的配置文件中有一个命令行开关 可以重新加载我的用户配置文件 每当我编辑我的个人资料时 VSCode 都会警告我 我使用的名字 Reload Profile 使用未经批准的动词 While Reload似乎是一个理智 明显且易于搜索的动词来
  • 将 Flask 应用程序部署到 godaddy 托管

    我正在使用 Python Flask 微框架 http flask pocoo org http flask pocoo org 来构建一个小应用程序 在本地测试了该应用程序并将其部署到 godaddy 当我转到 godaddy 时 我看到
  • 如何让 Page.ClientScript.RegisterClientScriptIninclude 包含在头部中?

    包含的脚本引用 特别是 jQuery 在视图状态之后呈现 有没有办法把它放在 中 Page ClientScript RegisterClientScriptInclude jQuery scripts jquery js 我正在尝试在用户
  • Spring AOP忽略Hessian Service的一些方法

    我有一个具有以下切入点定义的方面 Pointcut execution public de company project 以及包含以下内容的弹簧配置