JSONの改行コードによる解析エラーが発生する場合、相手先のJavaのAPIの実装が原因である可能性があります。一般的には、JSONのパースは改行やインデント(整形されたJSON)の影響を受けず、正しいフォーマットの文字列であれば正常に解析されるはずです。
考えられる原因としては次のようなことが挙げられます:
1. APIが改行や空白を処理できない設計
JSON文字列を受け取る際に改行をそのまま文字列として扱う実装になっており、パースに失敗している可能性があります。一般的には改行やインデントを取り除くか無視するような設計が求められます。
2. 特殊な文字列エスケープ処理の問題
改行コードが適切にエスケープされていない、もしくはJSONライブラリが何らかの理由で改行を誤って扱っている可能性があります。
3. 文字エンコーディングの違い
JSONが正しい形式で送信されていても、エンコーディングの問題が絡んでくることがあります。例えば、UTF-8で送信されたJSONを受け取る側が別のエンコーディングで解析しようとした場合、エラーが発生することがあります。
まとめ
このような場合、相手のJava側のAPIの実装を改善する余地がある可能性が高いです。ただし、送信側で改行をすべて除去してフラットな文字列にする対応を試してみて、それでエラーが回避できるか検証してみるのも有効かもしれません。