Invalid encoding name "UTF8". 报错 XML

报错:
2013-07-05 10:59:49,111 ERROR [STDERR] [Fatal Error] :1:38: Invalid encoding name "UTF8".
2013-07-05 10:59:49,113 ERROR [STDERR] org.xml.sax.SAXParseException: Invalid encoding name "UTF8".
2013-07-05 10:59:49,115 ERROR [STDERR] at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
2013-07-05 10:59:49,116 ERROR [STDERR] at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown Source)
2013-07-05 10:59:49,117 ERROR [STDERR] at javax.xml.parsers.DocumentBuilder.parse(Unknown Source)

查看源码:
String encode = System.getProperty("file.encoding");
……
ByteArrayInputStream XMLFile = new ByteArrayInputStream(mxml.getBytes());
Document doc = builder.parse(XMLFile);

boot.log发现:23:11:31,291 DEBUG [ServerInfo] file.encoding: 8859_1
而另一台编码正常的机器是:22:59:13,351 DEBUG [ServerInfo] file.encoding: UTF8
file.encoding编码不是UTF8,需要修改;
修改/etc/profile,增加;

LC_ALL=en_US.utf8
LC_CTYPE=en_US.utf8
LANG=en_US.utf8
OUTPUT_CHARSET=en_US.utf8
LESSCHARSET='en_US.utf8'
export LC_ALL LC_CTYPE LANG OUTPUT_CHARSET LESSCHARSET LANG

命令行输入:locale,打印当前编码设置,没有warning什么的就是正常了;
重启JBOSS,编码显示正常;

转载于:https://www.cnblogs.com/yejq/p/3173641.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一个简单的使用 Spring Boot 框架实现的用户登陆注册以及查询用户列表的示例项目,包含了 pom.xml 文件: pom.xml 文件: ```xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>user-management</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.6.2</version> <relativePath/> <!-- lookup parent from repository --> </parent> <properties> <java.version>11</java.version> </properties> <dependencies> <!-- Spring Boot web framework --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!-- Spring Boot data JPA --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <!-- H2 in-memory database --> <dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <scope>runtime</scope> </dependency> <!-- Spring Boot test framework --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <!-- Spring Boot Maven plugin --> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project> ``` 该项目使用了 Spring Boot 的 web 和 data JPA 模块,以及 H2 内存数据库。其中,web 模块用于实现 RESTful API,data JPA 模块用于实现数据库访问功能,H2 内存数据库用于存储用户信息。 下面是项目的核心代码: User.java 文件: ```java @Entity @Table(name = "users") public class User { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; @NotBlank @Size(max = 50) @Email private String email; @NotBlank @Size(max = 120) private String password; // getters and setters } ``` 该类是一个实体类,用于映射数据库中的用户表。其中,id 为用户的唯一标识,email 为用户的邮箱,password 为用户的密码。 UserController.java 文件: ```java @RestController @RequestMapping("/api/users") public class UserController { @Autowired private UserRepository userRepository; @GetMapping("") public List<User> getAllUsers() { return userRepository.findAll(); } @PostMapping("/register") public ResponseEntity<?> registerUser(@Valid @RequestBody User user) { if (userRepository.existsByEmail(user.getEmail())) { return ResponseEntity.badRequest().body("Email already exists"); } user.setPassword(new BCryptPasswordEncoder().encode(user.getPassword())); userRepository.save(user); return ResponseEntity.ok("User registered successfully"); } @PostMapping("/login") public ResponseEntity<?> authenticateUser(@RequestBody User user) { User existingUser = userRepository.findByEmail(user.getEmail()) .orElseThrow(() -> new ResourceNotFoundException("User", "email", user.getEmail())); if (!new BCryptPasswordEncoder().matches(user.getPassword(), existingUser.getPassword())) { return ResponseEntity.badRequest().body("Invalid password"); } return ResponseEntity.ok("User authenticated successfully"); } } ``` 该类是一个控制器类,用于处理用户相关的请求。其中,`@RestController` 注解表明该类是一个 RESTful API 控制器,`@RequestMapping` 注解指定了该控制器处理的请求路径前缀。`@Autowired` 注解用于自动注入 `UserRepository` 对象,该对象用于访问数据库。 `@GetMapping` 注解用于处理 GET 请求,该方法返回所有用户的列表。`@PostMapping` 注解用于处理 POST 请求,`/register` 路径用于注册新用户,`/login` 路径用于验证用户身份。 以上就是一个简单的使用 Spring Boot 框架实现的用户登陆注册以及查询用户列表的示例项目。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值