Fixed Charset Export to UTF8
git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/trunk/portlets/user/tabular-data-gwt-service@120101 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
parent
87acfdc5fc
commit
6dc39716fb
|
@ -750,6 +750,17 @@ public interface TDGWTService extends RemoteService {
|
||||||
throws TDGWTServiceException;
|
throws TDGWTServiceException;
|
||||||
|
|
||||||
// Export CSV
|
// Export CSV
|
||||||
|
/**
|
||||||
|
* Available charset for export
|
||||||
|
*
|
||||||
|
* @return
|
||||||
|
* @throws TDGWTServiceException
|
||||||
|
*/
|
||||||
|
public AvailableCharsetList getAvailableCharsetForExport()
|
||||||
|
throws TDGWTServiceException;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Start CSV Export and invokes the client library
|
* Start CSV Export and invokes the client library
|
||||||
*
|
*
|
||||||
|
|
|
@ -266,7 +266,6 @@ public interface TDGWTServiceAsync {
|
||||||
AsyncCallback<String> callback);
|
AsyncCallback<String> callback);
|
||||||
|
|
||||||
// Import CSV
|
// Import CSV
|
||||||
|
|
||||||
void setCSVSession(CSVImportSession csvImportSession,
|
void setCSVSession(CSVImportSession csvImportSession,
|
||||||
AsyncCallback<Void> callback);
|
AsyncCallback<Void> callback);
|
||||||
|
|
||||||
|
@ -285,6 +284,8 @@ public interface TDGWTServiceAsync {
|
||||||
AsyncCallback<String> callback);
|
AsyncCallback<String> callback);
|
||||||
|
|
||||||
// Export CSV
|
// Export CSV
|
||||||
|
void getAvailableCharsetForExport(AsyncCallback<AvailableCharsetList> callback);
|
||||||
|
|
||||||
void startCSVExport(CSVExportSession csvExportSession,
|
void startCSVExport(CSVExportSession csvExportSession,
|
||||||
AsyncCallback<String> callback);
|
AsyncCallback<String> callback);
|
||||||
|
|
||||||
|
|
|
@ -105,6 +105,7 @@ import org.gcube.data.analysis.tabulardata.service.tabular.metadata.ValidSinceMe
|
||||||
import org.gcube.data.analysis.tabulardata.service.tabular.metadata.ValidUntilMetadata;
|
import org.gcube.data.analysis.tabulardata.service.tabular.metadata.ValidUntilMetadata;
|
||||||
import org.gcube.data.analysis.tabulardata.service.template.TemplateId;
|
import org.gcube.data.analysis.tabulardata.service.template.TemplateId;
|
||||||
import org.gcube.portlets.user.td.gwtservice.client.rpc.TDGWTService;
|
import org.gcube.portlets.user.td.gwtservice.client.rpc.TDGWTService;
|
||||||
|
import org.gcube.portlets.user.td.gwtservice.server.encoding.EncodingPGSupported;
|
||||||
import org.gcube.portlets.user.td.gwtservice.server.file.CSVFileUploadSession;
|
import org.gcube.portlets.user.td.gwtservice.server.file.CSVFileUploadSession;
|
||||||
import org.gcube.portlets.user.td.gwtservice.server.file.CodelistMappingFileUploadSession;
|
import org.gcube.portlets.user.td.gwtservice.server.file.CodelistMappingFileUploadSession;
|
||||||
import org.gcube.portlets.user.td.gwtservice.server.file.FileUtil;
|
import org.gcube.portlets.user.td.gwtservice.server.file.FileUtil;
|
||||||
|
@ -4074,6 +4075,23 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
String defaultEncoding = Charset.defaultCharset().displayName();
|
String defaultEncoding = Charset.defaultCharset().displayName();
|
||||||
ArrayList<String> charsetList = new ArrayList<String>(Charset
|
ArrayList<String> charsetList = new ArrayList<String>(Charset
|
||||||
.availableCharsets().keySet());
|
.availableCharsets().keySet());
|
||||||
|
|
||||||
|
return new AvailableCharsetList(charsetList, defaultEncoding);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AvailableCharsetList getAvailableCharsetForExport()
|
||||||
|
throws TDGWTServiceException {
|
||||||
|
HttpSession session = this.getThreadLocalRequest().getSession();
|
||||||
|
if (session == null) {
|
||||||
|
throw new TDGWTServiceException(
|
||||||
|
"Error retrieving the session: null");
|
||||||
|
}
|
||||||
|
logger.info("Session:" + session.getId());
|
||||||
|
ArrayList<String> charsetList = EncodingPGSupported
|
||||||
|
.getEncodidingStringList();
|
||||||
|
String defaultEncoding = EncodingPGSupported.getDefaultEncoding();
|
||||||
|
|
||||||
return new AvailableCharsetList(charsetList, defaultEncoding);
|
return new AvailableCharsetList(charsetList, defaultEncoding);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4896,20 +4914,24 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param trId
|
* @param trId
|
||||||
* @param session TODO
|
* @param session
|
||||||
|
* TODO
|
||||||
* @throws TDGWTServiceException
|
* @throws TDGWTServiceException
|
||||||
*/
|
*/
|
||||||
protected void checkTRId(TRId trId, HttpSession session) throws TDGWTServiceException {
|
protected void checkTRId(TRId trId, HttpSession session)
|
||||||
|
throws TDGWTServiceException {
|
||||||
if (trId == null) {
|
if (trId == null) {
|
||||||
ResourceBundle messages = getResourceBundle(session);
|
ResourceBundle messages = getResourceBundle(session);
|
||||||
logger.error("TRId is null");
|
logger.error("TRId is null");
|
||||||
throw new TDGWTServiceException(messages.getString(TDGWTServiceMessagesConstants.noValidTabularResourceIdPresent));
|
throw new TDGWTServiceException(
|
||||||
|
messages.getString(TDGWTServiceMessagesConstants.noValidTabularResourceIdPresent));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (trId.getId() == null || trId.getId().isEmpty()) {
|
if (trId.getId() == null || trId.getId().isEmpty()) {
|
||||||
ResourceBundle messages = getResourceBundle(session);
|
ResourceBundle messages = getResourceBundle(session);
|
||||||
logger.error("TRId not valid: " + trId);
|
logger.error("TRId not valid: " + trId);
|
||||||
throw new TDGWTServiceException(messages.getString(TDGWTServiceMessagesConstants.noValidTabularResourceIdPresent));
|
throw new TDGWTServiceException(
|
||||||
|
messages.getString(TDGWTServiceMessagesConstants.noValidTabularResourceIdPresent));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -4919,14 +4941,15 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
* @param session
|
* @param session
|
||||||
* @throws TDGWTServiceException
|
* @throws TDGWTServiceException
|
||||||
*/
|
*/
|
||||||
protected void checkTabularResourceLocked(TabularResource tabularResource, HttpSession session)
|
protected void checkTabularResourceLocked(TabularResource tabularResource,
|
||||||
throws TDGWTServiceException {
|
HttpSession session) throws TDGWTServiceException {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
if (tabularResource.isLocked()) {
|
if (tabularResource.isLocked()) {
|
||||||
ResourceBundle messages = getResourceBundle(session);
|
ResourceBundle messages = getResourceBundle(session);
|
||||||
logger.error("Tabular Resource Is Locked!");
|
logger.error("Tabular Resource Is Locked!");
|
||||||
throw new TDGWTIsLockedException(messages.getString(TDGWTServiceMessagesConstants.tabularResourceIsLocked));
|
throw new TDGWTIsLockedException(
|
||||||
|
messages.getString(TDGWTServiceMessagesConstants.tabularResourceIsLocked));
|
||||||
}
|
}
|
||||||
} catch (TDGWTServiceException e) {
|
} catch (TDGWTServiceException e) {
|
||||||
throw e;
|
throw e;
|
||||||
|
@ -4941,20 +4964,21 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
*
|
*
|
||||||
* @param session TODO
|
* @param session
|
||||||
|
* TODO
|
||||||
* @param service
|
* @param service
|
||||||
* @param trId
|
* @param trId
|
||||||
* @throws TDGWTServiceException
|
* @throws TDGWTServiceException
|
||||||
*/
|
*/
|
||||||
protected void checkTabularResourceIsFinal(TabularResource tabularResource, HttpSession session)
|
protected void checkTabularResourceIsFinal(TabularResource tabularResource,
|
||||||
throws TDGWTServiceException {
|
HttpSession session) throws TDGWTServiceException {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
|
|
||||||
if (tabularResource.isFinalized()) {
|
if (tabularResource.isFinalized()) {
|
||||||
ResourceBundle messages = getResourceBundle(session);
|
ResourceBundle messages = getResourceBundle(session);
|
||||||
logger.error("Tabular Resource Is Final!");
|
logger.error("Tabular Resource Is Final!");
|
||||||
throw new TDGWTIsFinalException(messages.getString(TDGWTServiceMessagesConstants.tabularResourceIsFinal));
|
throw new TDGWTIsFinalException(
|
||||||
|
messages.getString(TDGWTServiceMessagesConstants.tabularResourceIsFinal));
|
||||||
}
|
}
|
||||||
|
|
||||||
} catch (TDGWTServiceException e) {
|
} catch (TDGWTServiceException e) {
|
||||||
|
@ -4969,13 +4993,14 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* @param session TODO
|
* @param session
|
||||||
|
* TODO
|
||||||
* @param service
|
* @param service
|
||||||
* @param trId
|
* @param trId
|
||||||
* @throws TDGWTServiceException
|
* @throws TDGWTServiceException
|
||||||
*/
|
*/
|
||||||
protected void checkTabularResourceIsFlow(TabularResource tabularResource, HttpSession session)
|
protected void checkTabularResourceIsFlow(TabularResource tabularResource,
|
||||||
throws TDGWTServiceException {
|
HttpSession session) throws TDGWTServiceException {
|
||||||
try {
|
try {
|
||||||
|
|
||||||
if (tabularResource.getTabularResourceType().compareTo(
|
if (tabularResource.getTabularResourceType().compareTo(
|
||||||
|
@ -5542,7 +5567,8 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
aslSession.getUsername(), aslSession.getScope()));
|
aslSession.getUsername(), aslSession.getScope()));
|
||||||
TabularDataService service = TabularDataServiceFactory.getService();
|
TabularDataService service = TabularDataServiceFactory.getService();
|
||||||
|
|
||||||
checkTRId(replaceColumnByExpressionSession.getColumn().getTrId(), null);
|
checkTRId(replaceColumnByExpressionSession.getColumn().getTrId(),
|
||||||
|
null);
|
||||||
|
|
||||||
TabularResourceId tabularResourceId = new TabularResourceId(
|
TabularResourceId tabularResourceId = new TabularResourceId(
|
||||||
Long.valueOf(replaceColumnByExpressionSession.getColumn()
|
Long.valueOf(replaceColumnByExpressionSession.getColumn()
|
||||||
|
@ -9322,7 +9348,7 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
public String startChartTopRating(
|
public String startChartTopRating(
|
||||||
ChartTopRatingSession chartTopRatingSession)
|
ChartTopRatingSession chartTopRatingSession)
|
||||||
throws TDGWTServiceException {
|
throws TDGWTServiceException {
|
||||||
HttpSession session=null;
|
HttpSession session = null;
|
||||||
try {
|
try {
|
||||||
session = this.getThreadLocalRequest().getSession();
|
session = this.getThreadLocalRequest().getSession();
|
||||||
SessionUtil
|
SessionUtil
|
||||||
|
@ -9388,7 +9414,7 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
@Override
|
@Override
|
||||||
public void saveResource(SaveResourceSession saveResourceSession)
|
public void saveResource(SaveResourceSession saveResourceSession)
|
||||||
throws TDGWTServiceException {
|
throws TDGWTServiceException {
|
||||||
HttpSession session=null;
|
HttpSession session = null;
|
||||||
try {
|
try {
|
||||||
session = this.getThreadLocalRequest().getSession();
|
session = this.getThreadLocalRequest().getSession();
|
||||||
SessionUtil.setSaveResourceSession(session, saveResourceSession);
|
SessionUtil.setSaveResourceSession(session, saveResourceSession);
|
||||||
|
@ -9578,7 +9604,7 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
public String startGeospatialCreateCoordinates(
|
public String startGeospatialCreateCoordinates(
|
||||||
GeospatialCreateCoordinatesSession geospatialCreateCoordinatesSession)
|
GeospatialCreateCoordinatesSession geospatialCreateCoordinatesSession)
|
||||||
throws TDGWTServiceException {
|
throws TDGWTServiceException {
|
||||||
HttpSession session=null;
|
HttpSession session = null;
|
||||||
try {
|
try {
|
||||||
session = this.getThreadLocalRequest().getSession();
|
session = this.getThreadLocalRequest().getSession();
|
||||||
SessionUtil.setGeospatialCreateCoordinatesSession(session,
|
SessionUtil.setGeospatialCreateCoordinatesSession(session,
|
||||||
|
@ -9655,7 +9681,7 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
public String startGeospatialDownscaleCSquare(
|
public String startGeospatialDownscaleCSquare(
|
||||||
GeospatialDownscaleCSquareSession geospatialDownscaleCSquareSession)
|
GeospatialDownscaleCSquareSession geospatialDownscaleCSquareSession)
|
||||||
throws TDGWTServiceException {
|
throws TDGWTServiceException {
|
||||||
HttpSession session=null;
|
HttpSession session = null;
|
||||||
try {
|
try {
|
||||||
session = this.getThreadLocalRequest().getSession();
|
session = this.getThreadLocalRequest().getSession();
|
||||||
SessionUtil.setGeospatialDownscaleCSquareSession(session,
|
SessionUtil.setGeospatialDownscaleCSquareSession(session,
|
||||||
|
@ -9731,7 +9757,7 @@ public class TDGWTServiceImpl extends RemoteServiceServlet implements
|
||||||
public String startGeometryCreatePoint(
|
public String startGeometryCreatePoint(
|
||||||
GeometryCreatePointSession geometryCreatePointSession)
|
GeometryCreatePointSession geometryCreatePointSession)
|
||||||
throws TDGWTServiceException {
|
throws TDGWTServiceException {
|
||||||
HttpSession session=null;
|
HttpSession session = null;
|
||||||
try {
|
try {
|
||||||
session = this.getThreadLocalRequest().getSession();
|
session = this.getThreadLocalRequest().getSession();
|
||||||
SessionUtil.setGeometryCreatePointSession(session,
|
SessionUtil.setGeometryCreatePointSession(session,
|
||||||
|
|
|
@ -0,0 +1,37 @@
|
||||||
|
package org.gcube.portlets.user.td.gwtservice.server.encoding;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author giancarlo email: <a
|
||||||
|
* href="mailto:g.panichi@isti.cnr.it">g.panichi@isti.cnr.it</a>
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
public enum EncodingPGSupported {
|
||||||
|
BIG5, EUC_CN, EUC_JP, EUC_JIS_2004, EUC_KR, EUC_TW, GB18030,
|
||||||
|
GBK, ISO_8859_5, ISO_8859_6, ISO_8859_7, ISO_8859_8, JOHAB,
|
||||||
|
KOI8R, KOI8U, LATIN1, LATIN2, LATIN3, LATIN4, LATIN5,
|
||||||
|
LATIN6, LATIN7, LATIN8, LATIN9, LATIN10, MULE_INTERNAL,
|
||||||
|
SJIS, SHIFT_JIS_2004, SQL_ASCII, UHC, UTF8,
|
||||||
|
WIN866, WIN874, WIN1250, WIN1251, WIN1252, WIN1253, WIN1254,
|
||||||
|
WIN1255, WIN1256, WIN1257, WIN1258;
|
||||||
|
|
||||||
|
private static ArrayList<String> encodingStringList;
|
||||||
|
|
||||||
|
static {
|
||||||
|
encodingStringList = new ArrayList<String>();
|
||||||
|
for (EncodingPGSupported r : values()) {
|
||||||
|
encodingStringList.add(r.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ArrayList<String> getEncodidingStringList() {
|
||||||
|
return encodingStringList;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String getDefaultEncoding() {
|
||||||
|
return UTF8.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue