Closed xxbokusu closed 1 year ago
spring initializerが対応するバージョンを上げているからかcompileが失敗した… https://start.spring.io/ というかSSで観るとJavaを指定する場所があったね…。私が悪い…
java11で改めてDLして動かそうと試みるも動かず… Spring boot2.7.13がjava11と相性悪いのかしら? https://qiita.com/gate9/items/7351557829d7e1e668e9 そう書いてあるようには見えないけど…
MyBatisでのDB操作に足をかけた。 DBを起動しようとしたらエラーが出た… https://zenn.dev/ajihiraki/articles/ddb2ee239d13fd
netstat -nao | findstr "3306"
どうやら別のmysqlが自動起動していたようだがそういう設定をしてたのかなぁ タスクマネージャからPIDでタスクを終了したら起動できた
https://it-jog.com/java/springboot/sbup-mysqldrivererror
実行時にwarnが出ていたけど、2021年の資料ベースの記述だと非推奨になってしまってるプラグインが多いのねー。 part2\demo_17\src\main\resources\mybatis-config.xml と part2\demo_17\src\main\resources\generatorConfig.xml で参照を
driverClass="com.mysql.jdbc.Driver"
から
driverClass="com.mysql.cj.jdbc.Driver"
p.140
No qualifying bean of type [com.example.domain.repository.CustomerRepository] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {} https://qiita.com/NagaokaKenichi/items/058a7243bd2948de7553
com/example/demo配下に置かないといけないdatabaseパッケージが外部にできてたので移動して解消
p.167 勇んでフロントエンドヘの表示確認をすると中身が出ない
Access to XMLHttpRequest at 'http://localhost:8080/book/list' from origin 'http://localhost:8081' has been blocked by CORS policy: The value of the 'Access-Control-Allow-Origin' header in the response must not be the wildcard '*' when the request's credentials mode is 'include'. The credentials mode of requests initiated by the XMLHttpRequest is controlled by the withCredentials attribute.
https://qiita.com/att55/items/2154a8aad8bf1409db2b
Access-Control-Allow-Originを*にしてるのがまずいってことでええかな
https://b1san-blog.com/post/spring/spring-cors/
デフォルトの設定では、すべてのオリジンからのリクエストが許可されてしまうため注意してください。 設定を変更するには、以下のプロパティを使用します。
@RestController
@RequestMapping('/api/sample')
@CrossOrigin(origins = "http://localhost:3000")
public class SampleController {
//...
}
テキストの記述を変更して
@CrossOrigin(origins = arrayOf("http://localhost:8081"))
とするも通用しないが、 別のアドレス
@CrossOrigin(origins = arrayOf("http://localhost:3036"))
だと適切に弾かれるので、一筋縄では突破できないことがわかる
A cross-origin resource sharing (CORS) request was blocked because it was configured to include credentials but the Access-Control-Allow-Credentials response header of the request or the associated preflight request was not set to true. To fix this issue, ensure that resources that expect credentialed CORS requests set the Access-Control-Allow-Credentials header to true. Note that this requires the Access-Control-Allow-Origin header to not be a wildcard *.
設定せよというなら「やってやらぁ!」と
@CrossOrigin(origins = arrayOf("http://localhost:8081"), allowCredentials = true.toString()
oh
読み切ってやり切ったのでまぁよし
サンプルコードのリポジトリをforkするところから https://github.com/xxbokusu/kotlin-server-side-programming-practice
IntelliJ IDEAをDLしてハローワールドするところまで。 IDEのバージョンが若干新しいものになって差分はあるが元々Mac用にテキストは書かれてるのでまぁ差分あってもいいんじゃないかな、と