【问题标题】:What is the best way to migrate OAuth to use Jakarta迁移 OAuth 以使用 Jakarta 的最佳方式是什么
【发布时间】:2022-11-26 12:06:15
【问题描述】:

我正在将应用程序从 javax.servlet 更新到 jakarta.servlet。该应用程序使用了一些 net.oauth 类,这些类在 jakarta 变体中似乎不可用。较新的 OAuth 实现将需要大量的重新编码。我不太清楚哪个 OAuth(OAuth2?)可能提供最全面的功能并继续得到支持。非常感谢任何指导。

【问题讨论】:

    标签: oauth oauth-2.0


    【解决方案1】:

    首先要做的是从 '切换依赖' 以及从 (Java EE) 到 (Jakarta EE 9) 的平台版本。例如,在行家您正在使用以下配置:

    <dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>8.0</version>
    <scope>provided</scope>
    </dependency>
    

    所以你只需要改变主要依赖如下:

    <dependency>
        <groupId>jakarta.platform</groupId>
        <artifactId>jakarta.jakartaee-api</artifactId>
        <version>9.0.0</version>
        <scope>provided</scope>
    </dependency>
    

    我还建议更新 JDK version(Java 11 和 Jakarta EE 9 的示例)。

    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.8.1</version>
    <configuration>
        <source>11</source>
        <target>11</target>
    </configuration>
    </plugin>
    

    现在您的项目通常将不再编译,所有以 javax.ejbjavax.persistence 开头的包都必须替换为新的雅加达前缀.

    所以你必须改变你的代码库的导入:

    import javax.ejb.*;
    import javax.persistence.*;
    import javax.servlet.*;
    import javax.xml.*;
    

    进入:

    import jakarta.ejb.*;
    import jakarta.persistence.*;
    import jakarta.servlet.*;
    import jakarta.xml.*;
    

    你可以用一个来完成这项工作外壳脚本或手动执行(对代码进行简短审查),完成重命名后,迁移的困难部分就完成了。

    您可以检查过程是否顺利并确保键入:

    mvn clean install
    

    一旦你完成了重命名,你的困难部分迁移完成.

    如果是JSON 和 XML 支持,在您的代码库中使用 javax.json 或 jaxb 实现,这通常是 junit 测试的情况。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-08-20
      • 1970-01-01
      • 2021-06-02
      • 1970-01-01
      • 2021-08-02
      • 2020-04-15
      • 2013-04-09
      相关资源
      最近更新 更多