[Java] Webservice fileupload

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Pim.
  • Registratie: Mei 2001
  • Laatst online: 16-08 16:15

Pim.

Aut viam inveniam, aut faciam

Topicstarter
Ik ben bezig mijn eerste stappen op het gebied van webservices te zetten. Ik gebruik daar netbeans icm GlassFish voor (werkt op zich goed).

Als oefenstuk heb ik een opdrachtje gekregen om een image te uploaden naar de webservice (die accepteert een byte array) en de webservice te laten controleren welk formaat de image heeft en wat de grootte is van het bestand. Ik heb de tip meegekregen naar de apache FileItem api te kijken omdat daar methodes inzitten die het werk voor me kunnen doen (ideaal zou je zeggen).


Ik heb gegoogled op:

byte array to FileItem
byte array to ByteArrayInputStream
ByteArrayInputStream to DefaultFileItem
webservice file upload
DiskFileItem
memoryFileItem

En zoals zovelen die eigenlijk niet weten wat ze aan het doen zijn mis ik de link van byte[] naar file voor de checks.

Ik vraag geen kant en klare oplossing maar ben wel erg benieuwd welke link ik mis ?

"The trouble with quotes from the Internet is that you can never know if they are genuine." - Elvis Presley | Niet met me eens ? DM ME


Acties:
  • 0 Henk 'm!

  • kluyze
  • Registratie: Augustus 2004
  • Niet online
Netbeans dus java? Het is dus de bedoeling dat je in java (je webservice) de byte code terug naar een file kan brengen?

Ik heb even op google ingetypt 'java byte[] to File' en zag bij de eerste code dat er gewoon de byte[] in zijn geheel naar een standaard OutputStream geschreven werd.
Java:
1
OutputStream.write()


Edit:
even de doc opgezocht

[ Voor 20% gewijzigd door kluyze op 07-12-2010 12:25 ]


Acties:
  • 0 Henk 'm!

  • momania
  • Registratie: Mei 2000
  • Laatst online: 07:26

momania

iPhone 30! Bam!

Neem je whisky mee, is het te weinig... *zucht*


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09
Dit kun je met de standaard java.io API ook in no time voorelkaar krijgen. Dit is echt basiswerk.

https://niels.nu


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12-09 10:54

Janoz

Moderator Devschuur®

!litemod

In je beschrijving zie ik trouwens nergens een plek waar je uberhaupt van een bytearray naar een bestand zou moeten gaan. Een bestand is niks meer dan diezelfde bytearray, maar dan weggeschreven op disk met een bijbehorende bestandsnaam. Hoe groot denk je dat het bestand wordt wanneer je alle bytes die in je bytearray staan wegschrijft?

Mijn vermoeden is dan ook dat je de tip verkeerd interpreteert. FileItem ga je waarschijnlijk juist nodig hebben bij het aanroepen van de webservice.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • Haan
  • Registratie: Februari 2004
  • Laatst online: 08:05

Haan

dotnetter

Kan je uit alleen een byte array wel opmaken wat het formaat* van een image is? In C# zou ik daar niet zo snel iets voor weten. (niet dat ik het ooit geprobeerd heb trouwens)

* formaat als in lengte x breedte of jpg/gif/etc. ?

Kater? Eerst water, de rest komt later


Acties:
  • 0 Henk 'm!

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 12-09 10:54

Janoz

Moderator Devschuur®

!litemod

Natuurlijk kan dat, mits je weet hoe een jpg/gif/etc in elkaar steekt (en dergelijke informatie staat over het algemeen redelijk simpel in de header waardoor het neerkomt op het uitlezen van een paar bytes op een specifieke positie). Maar ik neem aan dat je eerder bedoelt hoe je dat zou moeten doen met standaard aangeleverde tooling van je framework (maar dan nog lijkt het me dat er meer manieren mogelijk zijn dan de bytearray eerst naar de schijf te schrijven om hem vervolgens in te laden)

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


Acties:
  • 0 Henk 'm!

  • Killemov
  • Registratie: Januari 2000
  • Laatst online: 24-08 23:40

Killemov

Ik zoek nog een mooi icooi =)

Schrijf je nou zelf de webservice of schrijf je iets wat een bestaande webservice moet gebruiken?

Ik zie in de titel iets met fileupload dus ik roep maar: http://commons.apache.org/fileupload/

Hey ... maar dan heb je ook wat!

Pagina: 1