タグ

関連タグで絞り込む (246)

タグの絞り込みを解除

javaに関するKanasansoftのブックマーク (186)

  • オープンソース全文検索サーバー Fess

    利用環境 Apache ライセンスで提供 (フリーソフトなので、無料で利用可能) Java環境またはDocker環境で利用(OS非依存) OpenSearchまたはElasticsearchを検索エンジンとして利用 用途に応じて柔軟に対応可能な設計 クロール Web、ファイルシステム、Windows共有フォルダ、データベースをクロール MS Office(Word/Excel/PowerPoint) や PDF など多くのファイル形式に対応 リクエストヘッダーに情報付加、重複ドメインの設定、検索結果のパス変換 OCRなどの外部テキスト抽出対応

    オープンソース全文検索サーバー Fess
    Kanasansoft
    Kanasansoft 2018/05/01
    オープンソースの全文検索サーバ。Web/ファイルシステム/共有フォルダ等を対象にでき、MSOffice/PDF等多くのファイルに対応。認証や認可による表示の絞り込み等々非常に高性能。
  • 作って理解するWebフレームワーク - きしだのHatena

    前回、簡単なDIコンテナを作ってみたので、次はこれを使ってWebフレームワークを作ってみたいと思います。 Webサーバーをつくる まず、WebフレームワークなのでHTTPサーバーが必要ですね。なので簡単なものを作ります。 とりあえずブラウザからリクエストを受け取ったら200 OKとHTMLを返すだけのサーバーです。 今回は、そこらのブラウザからアクセスできればいいや、ということで、RFCとかの仕様に準拠することは考えません。 public class Server { public static void main(String[] args) throws IOException { ServerSocket serverSoc = new ServerSocket(8989); for (;;) { Socket s = serverSoc.accept(); new Thread((

    作って理解するWebフレームワーク - きしだのHatena
    Kanasansoft
    Kanasansoft 2016/04/21
    初心者・新人に勧めたい。
  • OutOfMemoryError の調べ方 - Qiita

    OutOfMemoryError (以下 OOME)が起こったときにお手上げ状態にならないためにも、 Java のメモリ管理の仕組みとか、 OOME が起こったときの調査方法とかを調べる。 環境 OS Windows 7 > java -version java version "1.8.0_74" Java(TM) SE Runtime Environment (build 1.8.0_74-b02) Java HotSpot(TM) 64-Bit Server VM (build 25.74-b02, mixed mode) Java 8 で、 Oracle の JVM を前提とした話です。 Java のメモリ管理 これを知っておかないと、 OOME が起こっても、メモリ内で何が起こっていて、どこを調査すべきで、どのように対処したらいいのかが判断できない。 なので、まずは、そもそも J

    OutOfMemoryError の調べ方 - Qiita
  • グーグル対オラクルのJava訴訟、米最高裁がグーグルの上告を棄却--Reuters

    米連邦最高裁判所は米国時間6月29日、著作権訴訟に関するGoogleの上告を棄却したとReutersが報じた。これによって、GoogleOracleに対し、Javaプログラミング言語を使用するためのライセンス料を支払う義務が生じる可能性がある。2014年に控訴裁判所がOracleに有利な判決を下したことを受け、Googleが最高裁判所に上告していた。 Oracleは29日の声明で、最高裁の判断を歓迎した。 「29日の最高裁判所の判断は、イノベーションと、著作権保護を拠り所にイノベーションを推進する技術業界にとっての勝利である」とOracleの法務顧問を務めるDorian Daley氏は声明で述べた。 Googleは、法廷での争いを続けたい意向を表明した。 「ソフトウェア業界でイノベーションと競争を促進する相互運用性を引き続き擁護していくつもりだ」とGoogleの広報担当者は述べた。 Th

    グーグル対オラクルのJava訴訟、米最高裁がグーグルの上告を棄却--Reuters
    Kanasansoft
    Kanasansoft 2015/06/30
    golangへの移行準備はもう済んでいるんじゃないかなぁ。(2回目) http://codezine.jp/article/detail/8360
  • 米最高裁がGoogleの訴えを却下、OracleとのJava著作権訴訟で

    Googleが米OracleJava関連の著作権を侵害したとされる訴訟で、米連邦最高裁判所が現地時間2015年6月29日にGoogleの上告を却下したと、複数の海外メディア(米Wall Street Journal、米Computerworld、米Reutersなど)が報じた。 最高裁が米連邦巡回控訴裁判所の判断を覆すことを拒否したことにより、OracleGoogleに一部Java言語の使用料を要求できる。Googleは、ライセンス料を払わなくてもJavaを使用できるはずだと主張していた。 この係争は、OracleGoogleのモバイルプラットフォーム「Android」にJavaの知的所有権を侵害されたとして2010年に起こしたもので、米カリフォルニア州北部連邦地方裁判所は2012年に、Oracleが問題とするJava APIは著作権法の対象ではないとの判断を下した。Oracle

    Kanasansoft
    Kanasansoft 2015/06/30
    golangへの移行準備はもう済んでいるんじゃないかなぁ。 http://codezine.jp/article/detail/8360
  • Introduction to Date and Time API, 2nd edition

    Introduction to Date and Time API, 2nd edition by Kenji Hasunuma, Vice president, Software developer at GlassFish Users Group Japan on Nov 08, 2013 71 views Introduction to Date and Time API, 2nd edition #jjug #ccc_r21 More…

  • Jettyでプロキシサーバ作る - Enjoy*Study

    Jettyのorg.mortbay.servlet.ProxyServletを使うと、リクエスト/レスポンスをそのまま中継するだけのプロキシサーバが簡単に動かせます。(Jetty 6.1.5で確認) 適当なWEBアプリケーションとして、 ProxyServletで全てのリクエストを受けるようにしておけばOKです。 ProxyServletでは、接続先に対してURLConnectionを使って接続し、リクエストの内容をコピー、そして受け取ったレスポンスをコピーして返却するような処理をしています。 ソースのコメントみると、「EXPERIMENTAL Proxy servlet.」となっているので、どこまでちゃんとプロキシとしての処理が実装されているのか不明ですが、私が使ってみた限りでは、特にエラーとなるようなことはありませんでした。 単に中継するだけのプロキシサーバでは使い道があまりなさそうで

    Jettyでプロキシサーバ作る - Enjoy*Study
  • オブジェクト指向は禁止するべき - きしだのHatena

    プログラムがまだ不慣れな人が「プログラムちょっとわかるようになったけど、まだぜんぜんオブジェクト指向とかできてません」のように言ったり、ちょっと慣れた人が「このソース、ぜんぜんだめ。オブジェクト指向ができてない」にようなことを言ったり、まるで、オブジェクト指向ができてるかどうかがよいプログラムかどうかを表すことになってるようだ。 Javaのアルゴリズムのに、「Javaなのにオブジェクト指向ができていない」のような書評がついているのを見たときには、お前は何を求めてるんだと思ったりもした。 そのようなオブジェクト指向は、窓から投げ捨てるべきだ。オブジェクト指向はプログラムのよしあしの基準にならない。 むだにHogeインタフェースとHogeImplクラスがあったり、むだにnewするだけのcreateメソッドがあったり、どこで値が設定されてるかわからないオブジェクトがひきまわされてたり、ソースコ

    オブジェクト指向は禁止するべき - きしだのHatena
    Kanasansoft
    Kanasansoft 2014/07/19
    全力で作られたオブジェクト指向迷路がこちら。→ EnterpriseQualityCoding/FizzBuzzEnterpriseEdition · GitHub https://github.com/EnterpriseQualityCoding/FizzBuzzEnterpriseEdition
  • Androidの脆弱性を見つけちゃった話

    JVN#53768697 Android OS において任意の Java のメソッドが実行される脆弱性 が公表されました。 不肖私が昨年9月にIPAに届け出たものです。 これまでは情報非開示依頼があったので多くを語ることができませんでした。 ヤバい内容なのでみんなに注意喚起したかったけれどそれができない苦しさ。 周りでICS端末を使ってる人を見かけたら「事情は言えないけどブラウザにはChromeを使って。標準ブラウザ使わないで」と言うくらいしかできなくて申し訳ありませんでしたm(_ _)m 当時のいきさつを日記から掘り起こして記録に残しておきたいと思います。 2012年9月15日(土) WebViewを使ったビジネスアプリのフレームワークを作りたいという構想があって(PhoneGapにはないビジネス用の固有の機能を入れようと思って。バーコードリーダーとか印刷機能とか)、そういえば addJ

    Kanasansoft
    Kanasansoft 2013/12/19
    引用されているうちのentry、実は未知の脆弱性だったらしくその後CVE-2012-4907に。既に他所で引用されていたので、下手にentryの削除もできず同じくずっと胃が痛い思いをしていました。
  • JSF + WebSocket で実装した IMAP Web メール・クライアント

    JSF + WebSocket で実装した IMAP Web メール・クライアント 2013年12月11日 at 2:55 午前 2件のコメント このエントリは Java EE Advent Calendar 2013 の 11 日目のエントリです。昨日はsk44_ さんの 「JSF で日語ファイル名のファイルダウンロード?」のご紹介 でした。 明日は @nagaseyasuhito さんです。 エントリを始める前に、昨日 12/10 は Java EE 6/GlassFish v3 が正式リリースされて丁度 4 年目にあたる日でした。2009 年のブログを確認すると 昨日の日時間の夜 11 時頃からダウンロードできていたようです。 Happy Birth Day 4th Anniversary of Java EE 6 & GlassFish v3 !! 今回私は、JavaServe

    JSF + WebSocket で実装した IMAP Web メール・クライアント
  • Android:Serviceの基本とonStartCommandの戻り値による動作の違い

    開始状態 startService()の呼び出しでサービスを開始すると、サービスは"開始状態"となります。 "開始状態"となったサービスは、システムからkillされるか明示的に終了しない限り停止しません。 バインド状態 bindService()を呼び出してサービスにバインドすると"バインド状態"となります。 バインドされたサービスは、バインドしたコンポーネントとの双方向通信やメッセージに よるやりとりを提供します。 "バインド状態"のサービスは全てのコンポーネントがらアンバインドされることで停止し ます。 開始+バインド状態 サービスがstartService()とbindService()両方で起動されると"開始状態"かつ "バインド状態"となります。 この状態のサービスは、両方の状態の停止条件を満たした場合に停止します。 つまり、全てのコンポーネントからアンバインドされてもstopS

  • Webサーバを作る

    レスポンスヘッダを取捨選択する 前回、 手作りのTCPクライアントでApacheを叩いてみたところ、 以下のレスポンスが得られました。 1: HTTP/1.1 200 OK 2: Date: Tue, 30 Jul 2013 17:47:09 GMT 3: Server: Apache/2.4.6 (Win32) 4: Last-Modified: Mon, 11 Jun 2007 11:53:14 GMT 5: ETag: "2e-432a0069dbe80" 6: Accept-Ranges: bytes 7: Content-Length: 46 8: Keep-Alive: timeout=5, max=100 9: Connection: Keep-Alive 10: Content-Type: text/html 11: 12: <html><body><h1>It works

  • TCPサーバ/クライアントを作る

    開発環境について この記事では、開発言語としてJava7を使用します。 それなりにユーザ層が厚く、処理系が無料で提供されている、 ということでJavaを選んだだけですので、 他の言語が得意な方は各自読み替えていただいてもよいかと思います。 OSも何でもかまいませんが、私はWindows Vistaを使用しています (2007年に購入したLet's Noteです。いい加減買い換えろって?)。 Webサーバとブラウザは通常TCP/IPで通信を行いますので、 Webサーバを作る前に、まずはTCPのサーバとクライアントを作ってみます。 JavaでのTCPサーバ/クライアントのサンプルソースは Google検索でもすればいくらでも見つかりますが、 ひとまずここでは以下のようなプログラムを書いてみました。 まずはサーバです(Server01.java)。 import java.io.*; impor

  • 本当の基礎からのWebアプリケーション入門――Webサーバを作ってみよう

    このページの目的は、 Webアプリケーションの基礎の基礎を説明することです。 さて、ここから下のぐだぐだは読み飛ばして、 いきなり実装の説明に 行ってもらってもかまいませんが、一応趣旨を書いておきます。 現在、プロのプログラマーの方々には、日々の仕事でせっせと 「Webアプリケーション」を作っている人が多いと思います。 そして、いまどきWebアプリケーションを作るのに、 CGIとかあり得ないでしょうから、 それなりの高級言語で、 それなりのフレームワーク等を使用して作っているのだと思います。 私自身、現状、仕事では主にC#とASP.NETを使っています。 そうやって生産性を上げるのは大変よいことだと思うのですが、 ことWebアプリケーションにおいては、 そのような「一見簡単そう」なフレームワークを使っても、 ちょっとややこしいことをやろうとするとすぐにうまくいかなくなって、 職場の先輩に聞

  • 「本当の基礎からのWebアプリケーション入門――Webサーバを作ってみよう」始めました - K.Maebashi's はてなブログ

    以前から「誰か書いてくれませんかね」とか言っていた「当の基礎からのWebアプリケーション入門――Webサーバを作ってみよう」ですが、誰も書いてくれないので自分で書きました。 当の基礎からのWebアプリケーション入門――Webサーバを作ってみよう http://kmaebashi.com/programmer/webserver/index.html 現状、合計で140行くらいのJavaプログラムで、普通に画像やCSSを含むWebページが表示できています。こちらのページの下のほうにも画像を貼っていますが、こんな感じで、ローカルのファイルシステムに置いてある私のWebサイトのトップページが表示できていますし、もちろんリンクをクリックして遷移することもできます。 「えっ? Webサーバってこんなに簡単に書けるの?」と思う人も多いのではないでしょうか。 もちろんこんなのは「わかっている人」から

    「本当の基礎からのWebアプリケーション入門――Webサーバを作ってみよう」始めました - K.Maebashi's はてなブログ
  • Java 9が1.5以前のソースコードのコンパイルを非サポートに

    Rustが再評価される:エコシステムの現状と落とし穴 In this article, we share findings and insights about the Rust community and ecosystem and elaborate on the peculiarities and pitfalls of starting new projects with Rust or migrating to Rust from othe...

    Java 9が1.5以前のソースコードのコンパイルを非サポートに
    Kanasansoft
    Kanasansoft 2013/07/13
    『提案では、コンパイラーは、せいぜいJavaコンパイラー自身のバージョンの3つ前までサポートする、と言っている。』
  • WebSocketが一番速いアプリケーションサーバはどれだ?

    WebSocketが一番速いアプリケーションサーバはどれだ?:Tomcat、Jetty、Socket.IO/Node.js性能比較(1/3 ページ) はじめに 2012年の10月にWindows 8が発売され、そこに搭載されたInternet Explorer(以下、IE) 10ではHTML5の機能が利用できるようになりました。また、2013年の2月にWindows 7版のIE 10もリリースされ多くのユーザーがHTML5の恩恵を受けられるようになりました。 HTML5の機能の多くは、Webブラウザ側で実装されれば、HTMLCSSを適切に記述することで利用が可能です。しかし、今回取り上げるWebSocketはサーバ側でも機能の実装が必要です。このため、WebSocketを利用する場合はWebブラウザだけではなくサーバを選ぶ必要があります。 WebSocketそのものの技術的な解説は、以下

    WebSocketが一番速いアプリケーションサーバはどれだ?
    Kanasansoft
    Kanasansoft 2013/06/05
    Jettyの性能が良いのは同意なんだけど、そのままではコアを1つしか使わず更にsocket.ioで重厚になったnode.jsを同列に比較するのは可哀想だと思う...。
  • 内部から見たVert.xとNode.jsとの比較 - uehaj's blog

    socket.ioがJavaやGrailsから扱えるかを調べている関係でvert.xを調べていて興味深かったので、こちらにあるVert.xの記事を翻訳してみました。JGGUG G*Workshopにおける杉浦さんのVert.x資料もお奨めです。 Vert.xは急速に発達つつあるサーバ・フレームワークです。 世にあまたあるサーバ・フレームワークのいずれもが、多様なプロトコルをサポートし、高速であることが特長であると主張していますが、Vert.xはそれらよりも一歩抜きん出ています。例えば、Vert.xは、サーバサイドのネットワーク環境の確立と操作も対象としています。言いかえれば、Vert.xは、単一サーバ上のデーモン実行だけでなく、クラスタリング環境での複数サーバデーモンの実行を考慮しているのです。 したがって、Vert.xを調査するにあたっては、どのように高性能を実現しているかだけではなく、

    内部から見たVert.xとNode.jsとの比較 - uehaj's blog
  • JavaでさくさくWebアプリ開発 - しんさんの出張所 はてなブログ編

    かなり久々の技術エントリ。 運用はお堅い重いサーバーを使ったとしても開発は軽いほうがいい。当たり前ですね。 というわけでさくさく開発する方法を書いてみる。DIコンテナはCDIやGuice、Springなど好きなものでよいが、今回は省く。軽いこともあって開発中はGuiceを使うことをお勧めしたい。注入は@Injectを使うため、開発中と運用中でコードが変わるってのは少ないはずだ。 まずはJAX-RS まず、アクションベースのWebアプリはJAX-RSを使うこと。これが基。サーブレットAPIを使わずに開発することについては今までも書いてきた。サーブレットAPIを触らないことにより開発効率とテストのしやすさを両立できる。 こんな感じ。 @Path("/") public class Hoge { @GET @Path("add/{a}/{b}") public Response add(@Pa

    JavaでさくさくWebアプリ開発 - しんさんの出張所 はてなブログ編
  • javaのロガーが多すぎて訳が解らないので整理してみました - 文系プログラマによるTIPSブログ

    最初は誰しもがファッ!?となるんですよねロガーって。 いずれtree-tipsで公開しようと思っている、solrのプロジェクトを今作っています。mavenでjarを管理している訳ですが・・ なんだこのロガーの数は!! commons-logging、log4j、slf4j-api、jcl-over-slf4j、logback-classic・・・・、こいつら一体何が違うんだ!どう使い分けるんだ!そもそも必要なのか!?となりました。 昔はcommons-logging+log4jというのがトレンドだった訳ですが、今はslf4j+logbackがトレンドになり、jdkも1.4から1.7になり、これらトレンドが推移する過程で、いろいろなjarが旧式に依存してしまい、旧式依存を解決するためにアダプタが登場し始め、mavenでjarを収集すると大抵両方入ってしまい、カオスになっているのです。 特にs

    javaのロガーが多すぎて訳が解らないので整理してみました - 文系プログラマによるTIPSブログ