apache / apache/incubator-seata

DefaultRemotingParser 中的getRemotingBeanDesc方法在beanName为null时报NullPointerException

Open
#2,327 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
26k
Forks
8.8k
Avg merge
1d 8h
Merged PRs (30d)
4

Description

我在用seata和定时任务quartz集成到一个项目时,出现quartz在创建job时会出现beanFactory.initializeBean(jobInstance, null);的方法调用,导致GlobalTransactionScanner中的wrapIfNecessary方法拦截,在wrapIfNecessary方法中的TCCBeanParserUtils.isTccAutoProxy(bean, beanName, applicationContext)判断时,由于传入的beanName为null,导致了后续的DefaultRemotingParser 中的getRemotingBeanDesc方法调用时出现NullPointerException。

Contributor guide

Open the contributing guide

Research direction

Start by tracing TCCBeanParserUtils.isTccAutoProxy through GlobalTransactionScanner.wrapIfNecessary to DefaultRemotingParser.getRemotingBeanDesc, using the reported beanName=null path from Quartz job creation. Reproduce the integration scenario and inspect the existing parser behavior. Done means this path no longer raises NullPointerException when the bean name is null.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
distributed-systems
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.