Anker PowerConf H700

Anker PowerConf H700(ワイヤレスヘッドセット Bluetooth 5.0)【パソコン用 / Web会議 / 通話ノイズリダクション / マイク搭載 / アクティブノイズキャンセリング / マルチポイント / 外音取り込み / USBアダプタ付属】AnkerAmazon 去年、このヘッドセット…

Enumの名称は単数形か複数系か

learn.microsoft.com ほとんどの Enum 型には単数名を使用しますが、ビット フィールドのEnum 型には複数名を使用するのがよいそうです。 Javaは、Enumで、ビットフィールドを表現できない(かわりにEnumSetを用いる)ので、単数が当たり前で、 他の言語を使…

Django(DRF)のレスポンスにcodeを含める

DRFのレスポンスは、通常は、メッセージが表示されるだけ。 { "param1": [ "この項目は必須です。" ] } APIの例外クラスを見ると、エラーコード(code)が指定されることがわかります。 このcodeをレスポンスに含めたい場合、どうするか。 class APIException(…

キャメルケースにおける略語の表現

HTML(HyperText Markup Language)、XML(Extensible Markup Language)などの略語は、通常、全て大文字で表現しますが、クラス名などのキャメルケースでは、どうするか、いつも悩ましい、私です。 qiita.com JAVAは、どうもHtmlというふうに、略語も一つの単語…

Oracle JDK8 Install in github action

github actionで、JDKをインストールする場合は、以下のgithub actionが提供されていますが、 難点は、OracleのJDKはサポートされていないことです。 github.com そういった場合、Oracleからwgetしてインストールするgithub actionを書くわけですが、今回、…

.envとPycharm

JetBrain製のエディターで、.envファイルを読み込ませたいときは、 EnvFileというプラグインを使用するとよいです。 github.com EAP版やアップグレード直後などに、ために、そのプラグインが使えないケースがあり、少し手間ではあるけど、 以下のように、pip…

突如、WebMoneyのAPIが、SSLPeerUnverifiedExceptionを投げ始めた。

TLS1.2に移行したようです。 すでに知られていることですが、java7は、デフォルトではTLS1.2をサポートしていません。 TLS1.2限定のサーバにリクエストを送信すると、以下のようなExceptionがスローされました。 javax.net.ssl.SSLPeerUnverifiedException: …

PayPay Open Payment API(OPA)の突合ファイルをOpenCSVで読み込んでみた。

PayPay OPAでは、前日の取引データなどが、突合ファイルとして生成され、HTTP GETで取得することができます。 こちらのPayPayのディベロッパサイトに、sampleの突合ファイルがありますので、取得して読み込んでみました。 Web Cashier - PayPay Open Payment…

PayPay Open Payment API(OPA)とSpring Framework(旧)の相性問題

github.com PayPay決済のSDKを追加したところ、Tomcatが起動しないトラブルが発生しました。 org.springframework.beans.factory.BeanDefinitionStoreException: Failed to read candidate component class: file [************.class]; nested exception is…

PayPay Open Payment API(OPA)のWebhookをjacksonしてみた

PayPay決済では、PayPay Open Payment API(OPA)という、決済操作をするAPIを提供しています。 その一つに、PayPay側からイベント通知を行うWebhookを提供しており、以下ようなJSON形式のデータがPostされるようです。 そのJSON形式のデータをjacksonで、デ…

知らんうちにmaven-eclipse-pluginが引退してた。

古いプロジェクトを、最新のEclipseで開いたのだけど、ClassNotFoundで、WTPが起動しない。 どうも、maven-eclipse-pluginが、最新のEclipseでは、うまく動かなくなっていた。 調べてみると、maven-eclipse-pluginは、とっくにEOLのようだ。 pom.xmlから、以…

javax.servlet.UnavailableException: In a Servlet 3.0+ application, you must not define a log4jServletFilter in web.xml. Log4j 2 defines this for you automatically.

Tomcat7に、古いWebアプリをデプロイしたら、log4jにまつわるエラーにより、WEBアプリが立ち上がらない問題に遭遇しました。 Tomcatのログを見ると、以下のようなエラーが出ていました。 SEVERE: Error during ServletContainerInitializer processing javax…

About DDD Structure

アプリケーションのアーキテクチャの勉強のため、githubに、随時、まとめていこうと思いました。DDDは、概念が難しく、実装に落とし込むことが難しいです。それゆえ、忌避される傾向もあるように感じます。たしかに、現場では、クラスをどうつくっていくか、…

Received fatal alert: protocol_version -> [Help 1]

How To Install Maven To Eclipse

Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INDEX `xxx` TO `yyy`' at line 1: ALTER TABLE `zzz` RENAME INDEX `xxx` TO `yyy`

とあるRuby製Webアプリの移管作業で発生したトラブルです。 データベースを作成するため、マイグレーションを実行したら、以下のようなエラーが発生しました。 Mysql2::Error: You have an error in your SQL syntax; check the manual that corresponds to …

Powermock + SpringでJUnitをやってみた

Spring Bootはやり方があるらしいが、素のSpring Frameworkだったら、どうやるんだろう。 ぜんぜん、ぐぐっても出てこないので、はまりつつ、やってみました。まず、アノテーション設定はこうします @RunWithと@PowerMockRunnerDelegateで、JUnit + PowerMoc…

jmockitのDeencapsulationがdeletedされてた

jmockitには、DeencapsulationというマジカルなUtilityクラスがあります。 通常は、アクセスできないフィールドやメソッドにアクセスすることができちゃう禁断のクラスです。 このクラスが、最新のバージョンで削除されていることが発覚しました。ことの経緯…

FTPサーバをiOSアプリに組み込む方法ついて

最近、オイコノミアを録画対象にいれました。 id:ryu-htmです。iOSアプリをFTPサーバにする方法ついて調べており、 Cで実装されたFTPサーバライブラリをサンプルのアプリに組み込んでました。github.com そもそも、アップルは許してくれるのだろうか? 外部…

詳解 Swift(第4版)を結局買った

詳解 Swift 第4版作者:荻原 剛志発売日: 2017/12/26メディア: 単行本1日2章ずつ読み、年末年始休暇中に読み切ろうという計画を立てました。 時間的に短いので、写経なし。ただひたすら読む。つらいなぁ。 がんばるぞぉーー。年末年始の特番の誘惑に負けない…

アプリ開発をはじめるにあたり

お世話になったお客さんとの仕事が終わりました。Hotな案件だったのですが、 IoTがどこまで実現しているのか、課題は何があるのか、 どういう仕組み(アーキテクチャ)で実現しているのか、 現状がみられて、とても実績をつませて頂きました。 撤退すると聞…

JPEGファイルのバイナリからExifが読めるようになるまでに見たサイト

けんしのページ - Exifファイルフォーマット - 最初に見た。ざっくりとはわかったけど、タグの位置の説明が理解できず挫折した。 http://dev.exiv2.org/projects/exiv2/wiki/The_Metadata_in_JPEG_files OSSライブラリのExiv2について調べていたら見つけた。…

詳解 Swift(第4版)が出そう

詳解 Swift 第4版作者:荻原 剛志発売日: 2017/12/26メディア: 単行本毎年、クリスマスの時期に出るんですね。Swiftは、一年毎にバージョンアップされるし、 本書く人も、たいへんですよね。 そろそろ、仕様が安定してくれればいいけど。ちなみに、自分は、3…

Adobe XMP Toolkit SDKをiOSアプリに組み込んでみた

画像ファイルに埋め込まれているメタ情報の中に、XML形式で格納されたデータがあります。 ざっくり言えば、ExifのXML版でしょうか。 XMPというAdobeによって標準化されたフォーマットなんだそうです。iOSアプリのための、このデータを扱うOSSのライブラリを…

増田 亨さんが待望の書籍化

DDD

現場で役立つシステム設計の原則 ~変更を楽で安全にするオブジェクト指向の実践技法作者:増田 亨発売日: 2017/07/05メディア: 単行本(ソフトカバー) 増田さんは、あの難解なDDDを実践しているということで、 以前から、尊敬していたエンジニアの一人です。…

UPnPのライブラリを探して

マイナーなプロトコルなのに、探すとライブラリあるもんですね。 プロトコルを実装することになったので参考にしたいと思います。 Cling Android(Java)のライブラリ。http://4thline.org/projects/cling/ドキュメントがしっかりしてる印象。クラス図は、参考…

今年もアドベントカレンダーが始まったよ。

qiita.com 毎年、この時期になると、今年は、みんな、どんなお題でやるかなぁって、楽しみにしてます。そもそも、アドベントカレンダーとは、キリスト教のカレンダーだったようです。 アドベントカレンダー(Advent calendar)は、クリスマスまでの期間に日…

UPnPの参考書を読んでみた

UPnP(Universal Plug and Play)は、簡単にいうと、USB機器のPlug and Playのように、 デバイスをネットワークに接続すると、他のデバイスと相互に認識し、 デバイス同士がどんな機能を提供できるのか知り合うことができます。 主に、AV機器のホームネットワ…

iOSはUSB機器制御ができる?

www.apple.comLightning端子を使用して、USB機器に接続する そういうのは、Jailbreak でもしないかぎり、できないと思ってたが、 そういうアプリというか製品を目にしたので、ググってみたら、それっぽstackoverflowが。stackoverflow.comExternal Accessory…

Helperクラスとは?

Helperというクラス。 Railsにも出てくるよね。 このHelperさんを、最近、よく見かけるんです。Helperというディレクトリがあって、 画面の制御、ビジネスロジックの制御、ビジネスロジックそのもの、ユティリティ、データアクセスまで、 そこには、なんでも…

プログラミングで役に立つツール(ウェブサービス)

ふと自分のブックマークを見てて、たくさんあるなぁー、 どれくらい使ってんだろぉ?と思って始めてみました。 FREEFORMATTER.COM JSONやXML、SQLなどを人が読みやすいようにフォーマットしてくれます。 Base64やURLエンコード/デコードする際にも利用してい…