ejb-to-cdi
Migrates EJB components to CDI managed beans.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Migrates EJB components to CDI managed beans.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Reads PLAN.md and executes each migration step sequentially. Applies transformations file by file, consulting domain-specific reference patterns provided by loaded migration skills. Use after the plan stage has produced PLAN.md.
Migrates Java EE 7/8 applications (WebLogic, JBoss, WildFly) to Quarkus 3. Use when moving off a traditional Java EE application server to the Quarkus runtime, not just renaming javax to jakarta.
Reads a project and a goal statement, then produces PLAN.md in the repo root. The plan is specific to THIS project — real file paths, real dependencies, real layer ordering. Uses graphify to generate a code graph, then selectively reads complex files. Does NOT execute any changes. Output is always PLAN.md and nothing else. Use when starting a new migration to create the migration plan before any code changes.
Runs the project build command, parses compiler errors, applies conservative fixes, and iterates until the build passes or max iterations are reached. Use after the execute stage has finished migrating source files.
Migrates Maven POM files from Java EE to Jakarta EE.
Enforces that no javax.* imports remain after migration.
| name | ejb-to-cdi |
| description | Migrates EJB components to CDI managed beans. |
When migrating from Java EE to Jakarta EE or Quarkus, replace Enterprise JavaBeans (EJB) with CDI managed beans.
@Stateless with @ApplicationScoped.@Stateful with @SessionScoped or @ApplicationScoped
depending on the use case.@Singleton (javax.ejb) with @ApplicationScoped +
@Startup if initialization is needed.@LocalBean and @Local — CDI beans are local by default.@EJB injection with @Inject.@Inject or programmatic lookup
via CDI.current().select(...).@Schedule (EJB Timer) with Quarkus @Scheduled or
jakarta.enterprise.concurrent scheduled executors.@MessageDriven with framework-specific messaging
(e.g., Quarkus SmallRye Reactive Messaging with @Incoming).Before:
@Stateless
public class OrderService {
@EJB
private InventoryService inventory;
public void processOrder(Order order) {
inventory.reserve(order.getItems());
}
}
After:
@ApplicationScoped
public class OrderService {
@Inject
InventoryService inventory;
public void processOrder(Order order) {
inventory.reserve(order.getItems());
}
}