Use:
GL11.glBegin(GL11.GL_QUADS);
GL11.glTexCoord2f(0, 0);
GL11.glVertex2f(100, 100);
GL11.glTexCoord2f(texture.getWidth(), 0);
GL11.glVertex2f(100+texture.getImageWidth(), 100);
GL11.glTexCoord2f(texture.getWidth(), texture.getHeight());
GL11.glVertex2f(100+texture.getImageWidth(),100+texture.getImageHeight());
GL11.glTexCoord2f(0, texture.getHeight());
GL11.glVertex2f(100,100+texture.getImageHeight());
GL11.glEnd();
I believe that will fix your problem. You're using getTexture[Dimension] and 1.0, instead of getImage[Dimension] and get[Dimension].
getTexture and 1.0 instruct OpenGL to use the edge of the Texture, not the image you loaded onto it. However, you can instruct OpenGL to only render a quad containing the Image you loaded by making calls referencing the Image's relative dimensions on the texture containing it.