Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

正規表現として扱われる文字列内にあるピリオドをエスケープしました。 #3

Merged
merged 1 commit into from Oct 19, 2013

Conversation

Projects
None yet
2 participants
@backpaper0
Copy link
Contributor

commented Oct 18, 2013

bindメソッド内で次のようなコードがあります。

JndiResourceLocator.resolveName(name).split(".")

これは例えば "foo.bar.baz" といった文字列が渡された場合にピリオドで分割して { "foo", "bar", "baz" } という配列に変換されることを期待しています。
しかしString#split(String)は引数の文字列を正規表現として扱うのでこのコードだとすべての文字で分割されてしまいます。
以上のことから期待する動作を確認するためのテストコードを追加してbindメソッドを修正しました。

正規表現として扱われる文字列内にあるピリオドをエスケープしました。
bindメソッド内で次のようなコードがあります。

> JndiResourceLocator.resolveName(name).split(".")

これは例えば "foo.bar.baz" といった文字列が渡された場合にピリオドで分割して { "foo", "bar", "baz" } という配列に変換されることを期待しています。
しかしString#split(String)は引数の文字列を正規表現として扱うのでこのコードだとすべての文字で分割されてしまいます。
以上のことから期待する動作を確認するためのテストコードを追加してbindメソッドを修正しました。

@koichik koichik merged commit ab06528 into seasarorg:master Oct 19, 2013

@koichik

This comment has been minimized.

Copy link
Member

commented Oct 19, 2013

ありがとうございます、マージしました。
それにしても7年もこの状態だったとは心より恥じる。とほほ。。。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.