2024.0.07
ImprovementLuciadFusion
LF-2560
ImprovementLuciadFusion
LF-2560
ImprovementLuciadFusion
LF-2610
TLfnDataCreatedEvent
TLfnDataDeletedEvent
TLfnDataUpdatedEvent
TLfnDataRootCreatedEvent
TLfnDataRootDeletedEvent
TLfnDataRootUpdatedEvent
TLfnJobCreatedEvent
TLfnJobDeletedEvent
TLfnJobSchedulingFailedEvent
TLfnJobUpdatedEvent
TLfnJobStoppedEvent
TLfnJobQueuedEvent
TLfnProductCreatedEvent
TLfnProductDeletedEvent
TLfnProductUpdatedEvent
TLfnServiceCreatedEvent
TLfnServiceDeletedEvent
TLfnServiceStatusChangedEvent
TLfnServiceUpdatedEvent
TLfnStyleCreatedEvent
TLfnStyleDeletedEvent
TLfnStyleUpdatedEvent
ImprovementLuciadFusion
LF-2611
TLfnEventSourceRequest
of events published by LuciadFusion now includes the remote address of the client that made the request.
The address can be obtained by calling the getRemoteAddress
method on the TLfnEventSourceRequest
object.
Note that this address can be the address of a proxy server if a proxy is put in front of LuciadFusion.
Bug fixLuciadFusion
LCD-13445
TLcdBingMapsModelDecoder
: resolved an issue where unexpected parameters in the Bing Maps template URL could trigger a parse exception.
Bug fixLuciadFusion
LF-2633
Bug fixLuciadFusion
LCD-13533
Bug fixInfrastructure Standards
LCD-13501
TLcdIFCModelDecoder
showed wrong material information in specific
use cases.
2024.0
2024.0.06
Bug fixLuciadFusion
LCD-13525
2024.0.05
ImprovementInfrastructure Standards
LCD-13506
TLcdRevitModelDecoder
with respect to textured materials.
Bug fixLuciadFusion
LCD-13519
GetLegendGraphic
support for layers styled with an SLD did not take
into account the color of a polygon symbolizer if it was defined inside a mark
.
Bug fixLuciadFusion
LCD-13508
GetCapabilities
request:
- The parameter was not supported for WCS 1.1 POST requests.
- The parameter was not validated for WCS 1.0 GET and POST requests.
Bug fixLuciadFusion
LCD-13496
TLcdGeoPackageModelDecoder
, TLcdLVDBModelDecoder
and TLcdSpatiaLiteModelDecoder
now are able to correctly resolve the srs_id
of data when the name of the table or column containing the spatial data contains non ASCII characters.
Bug fixLuciadFusion
LCD-13510
GetFeature hits
request.
Bug fixDefense Standards
LCD-13500
TLcdNITFModelDecoder
can now process image blocks with differing width and height,
meaning they no longer need to be square.
2024.0.04
ImprovementLuciadFusion
LCD-13270
ImprovementLuciadFusion
LF-2622
lfn.creationTime
or lfn.updateTime
properties has been improved.
ImprovementAdvanced Raster Services
LCD-13456
TLcdGDALModelDecoder
can now handle data in which the image is
rotated relative to the axes of the model reference. In this case a fitted (also called "derived") projected
ILcdGridReference
will be returned as a model reference.
ImprovementAdvanced Raster Services
LCD-13455
TLcdGDALModelDecoder
will now decode a ILcdModelTreeNode
if the data contains subdatasets.
ImprovementInfrastructure Standards
LCD-13486
Bug fixLuciadFusion
LF-2626
Bug fixLuciadFusion
LCD-13477
PointSymbolizer
can now be disabled.
This capability can be activated on a TLcdSLDPointSymbolizer
by configuring an SLD vendor option
with name allowEditing
and value false
.
Bug fixLuciadFusion
LCD-13476, LCD-13470
LCD-13438
have been reverted. An alternative solution is provided through LCD-13477
.
Bug fixLuciadFusion
LCD-13424
ILcdModel
instances created by the TLcdGeoPackageModelDecoder
on fields that start with a number.
Bug fixLuciadFusion
LCD-12862
TLcdSemanticsOp
contain nodata values but the original semantics did not, they will now be taken into account in further processing.
This means pixel values matching the nodata value do not participate in any further operations. These pixels will not be
displayed when visualized on screen.
Bug fixLuciadFusion
LCD-13475
- Dimensions with an axis without a unit.
- Dimensions with strings as possible values.
Bug fixReal-time Engine
LCD-13487
TLspContinuousLabelingAlgorithm
didn't handle edited labels correctly anymore. Such labels
were, for example, not correctly moved when colliding with one of the view's edges, or with another label. This was
a regression that was introduced in the first LuciadLightspeed 2022.1 release.
Bug fixDefense Symbology
LCD-11416
Upgrade considerationLuciadFusion
LCD-13414
Fixed a potential deadlock when modifying the ILcdCollection
that is returned by
ILspInteractivePaintableLayer#getObjectsWithPaintState
, while holding a write lock on that
collection. To fix this, ILcdCollection
(and by extension ILcdList
)
now have additional methods that allow specifying an ILcdFireEventMode
when performing
modifications. By using the ILcdFireEventMode.FIRE_LATER
event mode, collection change
events are fired after the write lock has been released.
We recommend scanning your codebase for any custom usages of
ILspInteractivePaintableLayer#getObjectsWithPaintState
and making sure that
any modifications to this collection happen within a write lock, while the change events are only fired after
that write lock has been released. An example code snippet on how to do this can be found in the
ILspInteractivePaintableLayer#getObjectsWithPaintState
method javadoc.
2024.0.03
New featureInfrastructure Standards
LCD-13337
Please refer to the Filtering BIM data article for more information.
ImprovementLuciadFusion
LCD-13396
com.luciad.format.dafif.TLcdDAFIFModelDecoder#canDecodeSource
and
com.luciad.format.coverage.TLcdCoverageModelDecoder#canDecodeSource
have been optimized.
This also improves crawling performance of data inside LuciadFusion, which is now up to 24% faster.
ImprovementLuciadFusion
LF-2592
hspcInfo.json
file.
ImprovementLuciadFusion
LCD-12583
ImprovementLuciadFusion
LCD-10417
TLcdGeoPackageModelDecoder
and TLcdGeoPackageModelEncoder
now have support for the following geometry types:
MULTICURVE |
MULTISURFACE |
CURVEPOLYGON |
COMPOUNDCURVE |
ImprovementLuciadFusion
LF-2598
ImprovementLuciadFusion
LF-2505
ImprovementLuciadFusion
LCD-13464
ImprovementLuciadFusion
LCD-13447
GetFeature
POST requests has now been
aligned between all WFS versions: similar as for WFS 1.x requests, spatial filters in WFS 2.0 POST requests are now
decoded and transformed to the geographic reference of the requested WFS feature type. For GET requests, this was already
the case.
ImprovementDefense Symbology
LCD-3155
TLspIconStyle
.
ImprovementInfrastructure Standards
LCD-13408
TLcd3DTilesProcessorBuilder
: Now uses all registered ILcdModelReferenceDecoder
instances when searching for external model reference files.
Bug fixLuciadFusion
LCD-13433
Bug fixLuciadFusion
LF-2617
TLfnJobQueuedEvent
from being published
when a crawl job was queued as a result of a new data root being created.
Bug fixLuciadFusion
LCD-13466
ILcdMultiDimensional
model dimensions that have a
TLcdISO19103DistanceMeasure
as measure.
Bug fixLuciadFusion
LCD-13347
com.luciad.sqlite.cacheMode
system property allows the user to provide the cache mode used by sqlite driver.
Possible values are private
and shared
, with private
being the default value.
Bug fixLuciadFusion
LF-2590
tomcat-embed-el
library.
Bug fixLuciadFusion
LCD-13474
TLcdEPSGReferenceParser
parsed the TOWGS84 rotation incorrectly for some EPSG codes.
Coordinate references using the following datums are affected:
- IG05/12 Intermediate Datum (EPSG:1144)
- World Geodetic System 1984 (G730) (EPSG:1152)
- World Geodetic System 1984 (Transit) (EPSG:1166)
- CR-SIRGAS (EPSG:1225)
- Sistem Referensi Geospasial Indonesia 2013 (EPSG:1293)
- International Terrestrial Reference Frame 1992 (EPSG:6651)
Bug fixLuciadFusion
LCD-13351
TLcdSphereUtil#closestPointOnGeodesic
and TLcdSphereUtil#closestDistanceToGeodesic
didn't always produce correct results.
Bug fixLuciadFusion
LCD-11876
TLcdGeoTIFFModelDecoder
and TLcdMIFModelDecoder
for data that makes use of the "Amersfoort / RD New" reference (EPSG:28992).
Bug fixLuciadFusion
LCD-10789
TLcdLambert1972BelgiumGridReference
now aligns more closely to the definition of
EPSG:31300 in the EPSG database. This improves the precision of this reference by a few millimeters.
Bug fixLuciadFusion
LCD-10790
TLcdWKTReferenceParser
and
TLcdEPSGReferenceParser
now don't return an instance of
TLcdLambert1972BelgiumGridReference
anymore because it deviates from the definition of
EPSG:31370.
Bug fixLuciadFusion
LF-2186, LF-2607
Bug fixLuciadFusion
LF-2616
TLfnStyleDeletedEvent
being published. This was previously not the case.
Bug fixLuciadFusion
LCD-13448
TLcdGeorefUtil
: fixed a rounding error that could occur when parsing a GEOREF coordinate.
Bug fixLuciadFusion
LCD-13438
PointSymbolizer
can only be enabled when the geometry is an ILcdPoint
.
This avoids unwanted behavior when editing is enabled in combination with an SLD style containing multiple symbolizers.
Bug fixLuciadFusion
LCD-13434
Bug fixLuciadFusion
LCD-13427
TLcdCartesian#orientation2D
no longer throws an exception when passing an empty point list.
This also improves the robustness of the TLcdGeoJsonModelEncoder
.
Bug fixLuciadFusion
LCD-13407
xsd:anyType
elements with a built-in XML data type
that is specified using xsi:type
.
Bug fixLuciadFusion
LF-2595
Bug fixLuciadFusion
LF-2567
GET api/data/filter
endpoint that resulted in too many parameter errors reported by the database.
Bug fixLuciadFusion
LF-2200
Bug fixLuciadFusion
LCD-10813
TLcdGeoPackageModelDecoder
now correctly handles the CIRCULARSTRING
geometry type as a collection of zero or more continuous circular arc segments and
the TLcdGeoPackageModelEncoder
is able to encode a ILcdCompositeCurve
containing multiple ILcdCircularArcBy3Points
instances to CIRCULARSTRING
.
Bug fixLuciadFusion
LCD-13460
Bug fixLuciadFusion
LF-2620
fusion.hspc.cache.maxAge
property to 30 days, which corresponds to
the value mentioned in the documentation.
Bug fixLuciadFusion
LCD-13449
ArrayIndexOutOfBoundsException
when accessing DTED data through the
ILcdRaster
API.
This could occur when using the TLcdDTEDDirectoryModelDecoder
with lazy
DTED tile loading and when the DTED file deviates from the DTED specification.
Bug fixLuciadFusion
LCD-13423
Bug fixLuciadFusion
LCD-6862
TLcdTABRasterModelDecoder
could throw a RuntimeException
instead of an
IOException
when decoding a TAB
for raster data not supported by JAI.
Now it throws an IOException
with a more clear message.
Bug fixLuciadFusion
LCD-12749
TLcdBandColorSemanticsBuilder
ignored the specified no data value when building from a color model.
Bug fixLuciadFusion
LCD-13377
Bug fixLuciadFusion
LF-2620
Updated the value of the cache.maxAge
properties to 30 days, which corresponds to
the value mentioned in the documentation.
The following caching properties have been updated:
fusion.ogctilesservice.cache.maxAge
fusion.panoramics.cache.maxAge
fusion.studio.webapp.cache.maxAge
Bug fixLuciadFusion
LCD-13429, LCD-13432
UnsupportedOperationException
.
Bug fixLuciadFusion
LCD-13431
GoogleCRS84Quad
tile matrix set that used a reference with a lat/lon axis order.
This prevented the layer from being visualized on the map.
Bug fixLuciadFusion
LCD-13379
TLcdOGC3DTilesModelDecoder
: fixed an issue when opening Luciad Point Cloud datasets
by passing a file URL.
Bug fixLuciadFusion
LCD-13413
lcd_epsg_resources.jar
) could not be loaded in an OSGi environment.
Bug fixDatabase Connectors
LCD-13280
TLcdOracleSpatialModelDecoder
no longer uses the SDO_COLUMN_NAME
column of the
USER_SDO_INDEX_METADATA
view to determine the dimension of the spatial index, because this column is not always present.
Bug fixAviation Standards
LCD-13435
NullPointerException
when it was visualized in a Lightspeed view.
Bug fixDefense Symbology
LCD-13411
- The outline of the area is now drawn with a solid stroke instead of a dashed stroke
- The hostile indicator ("ENY") is now rendered in the outline stroke, when the symbol's affiliation is set to 'Hostile'
Bug fixDefense Symbology
LCD-13394
arrow
element,
where the "crossover" point would be located at the tail of the arrow instead of at the tip of the arrow.
Bug fixDefense Symbology
LCD-13412
Bug fixInfrastructure Standards
LF-2520
TLcd3DTilesProcessorBuilder
: fixed an issue where TIFF textures could end up missing in the
output.
Bug fixInfrastructure Standards
LCD-13457
TLcd3DTilesProcessorBuilder
: fixed a possible crash issue when handling textures with indexed
colors.
Bug fixInfrastructure Standards
LCD-13352
Bug fixInfrastructure Standards
LCD-13472
TLcdIFCModelDecoder
did not revert the direction of a trimmed
IfcLine
or IfcPolyline
when necessary.
Bug fixInfrastructure Standards
LCD-13471
TLcdIFCModelDecoder
now ignores elements with an IfcGridPlacment
.
A warning is logged when such elements are encountered.
Bug fixInfrastructure Standards
LCD-13298
TLcdCompositeModelDecoder
, when used in combination with a TLcdIFCModelDecoder
,
wasn't able to decode the IFC features datasource returned by the discoverDataSources
method.
Bug fixMaritime Standards
LCD-13463
ClassCastException
could happen when cloning a cell model bounds.
Upgrade considerationWeather & Environment Standards
LCD-13437
Upgrade considerationInfrastructure Standards
LCD-13400
TLcdRevitModelDecoder
. This upgrade brings the following new features and enhancements:
- Adds support for Revit 2025
- Fixes a decoding crash for some Revit files
- Contains several improvements to the generated Revit metadata
2024.0
New featureLuciadFusion
LuciadFusion Studio now supports the Autodesk Revit format.
Adding or crawling a Revit file will result in two data entries: one for the geometry data and one for the features data. The geometry data can be published in an OGC 3D Tiles service. It will be pre-processed into OGC 3D Tiles before the service is started. The features data can be published in a WFS service.
The article Serving BIM data from LuciadFusion Studio explains in more detail how you can use Revit data.
New featureLuciadFusion
New featureLuciadFusion
New featureLuciadFusion
New featureLuciadFusion
The Spring Boot dependencies of LuciadFusion have been upgraded from version 2.7 to version 3.2. This newer version brings numerous new features and fixes. It's advisable to read through the release notes of every version to know what is new, what has changed and what has been deprecated.
- Spring Boot 3.0 Migration Guide
- Spring Boot 3.1 Release Notes
- Spring Boot 3.2 Release Notes
- Spring Framework 6 Release Notes
- Preparing for Spring Security 6
- Spring Security 6 migration guide
Check out our LuciadFusion troubleshooting guide for a list of major changes caused by the Spring Boot upgrade.
New featureLuciadFusion
TLcdMBTilesModelDecoder
now also supports MBTiles services, next to files. To decode an MBTiles service you need to provide the TileJSON endpoint
as source.
An MBTiles service can for example be set up with LuciadFusion as of version 2024.0.
New featureLuciadFusion
New featureLuciadFusion
colorReplace
and colorReplaceTolerance
in a
TLcdSLDRasterSymbolizer
. The new article
How to replace a color
illustrates this capability with an example.
New featureLuciadFusion
TLcdPixelReplaceOp
is a new image operator which replaces a given color or value in an
image with another. It can be used, for instance, to remove blank borders around an image by replacing them with
a transparent color.
New featureAdvanced Raster Services
LuciadFusion and LuciadLightspeed users can now visualize ECW images with any number of bands and any bit depth.
New featureReal-time Engine
TLspRadarVideoLayerBuilder
now has the ability to work with radar feeds
whose angular or radial resolution are variable over time. This requires the user to manually
specify the resolution of the visualization, which is then effectively decoupled from that of
the data. The new method displayResolution()
on the layer builder is
used to enable this behavior. If called, the radar video layer will be fully robust against
all variations in the resolution of the incoming data.
New featureInfrastructure Standards
Added support for the Autodesk Revit data format. Autodesk Revit is a BIM software tool for architects, engineers, and construction professionals to model shapes, structures, and systems in 3D.
For more details, see the Autodesk Revit entry in the Data Formats documentation section
ImprovementLuciadFusion
LCD-13326
FILTER
parameter that operates like the WFS GetFeature FILTER parameter for both GetMap and GetFeatureInfo requests.
ImprovementLuciadFusion
GetLegendGraphic
support
to create a meaningful legend for vector-oriented SLD styles (containing polygon, line and/or point symbolizers).
You can also find the implementation in sample code to ease customizations: see
samples.wms.server.SLDVectorWMSGetLegendGraphicEncoder
and
samples.wmts.server.SLDVectorWMTSGetLegendGraphicEncoder
.
ImprovementLuciadFusion
LF-2576
fusion.common.yml
file.
ImprovementLuciadFusion
The following new system properties let users configure reference decoder priority for the following model decoders:
TLcdGeoTIFFModelDecoder
:com.luciad.format.raster.TLcdGeoTIFFModelDecoder.referenceDecoderPriority
TLcdLASModelDecoder
:com.luciad.format.las.TLcdLASModelDecoder.referenceDecoderPriority
TLcdE57ModelDecoder
:com.luciad.format.e57.TLcdE57ModelDecoder.referenceDecoderPriority
The priority decides whether the model reference decoding is first attempted from the reference information embedded in the data file and then fall back to external reference source files such as WKT (.prj), REF (.ref) and EPSG (*.epsg) in case of an error or vice versa when the other reference decoder priority is selected.
For more information on how to configure the reference decoder priority for supported
ILcdModelDecoder
implementations, refer to the following article:
Setting model reference decoder priority
ImprovementLuciadFusion
LCD-13341
TLcdGeoPackageModelDecoder
to
provide the correct display names in TLcdDataModelDisplayNameProvider#getDisplayName(TLcdDataProperty)
.
ImprovementLuciadFusion
ImprovementLuciadFusion
ImprovementLuciadFusion
LCD-13289
TLcdGXYTiledWMSProxyPainter
and TLspTiledWMSProxyPainter
.
Customizing tile grid references can be useful to align with a server-defined tile grid reference used for caching of requests.
ImprovementLuciadFusion
ImprovementLuciadFusion
LCD-8681, LCD-13260
TLcdDataProperty#getSourceName
, which contains the property name as it was
defined in the source data. This may differ from the actual name of the property within the
TLcdDataType
, because that name can contain only alphanumeric characters and underscores,
and may therefore have been sanitized.
When building a data type, the source name of a property can be configured with a setter on the
TLcdDataPropertyBuilder
. Additionally, TLcdDataType#getProperty
now also checks this source name when searching a property that matches a given name.
The default TLcdDataModelDisplayNameProvider
has also been adapted to use this source
name by default, when retrieving a display name for a property.
Finally, The TLcdGeoJsonModelEncoder
now uses these source names by default as well,
when encoding data objects to GeoJSON features.
ImprovementLuciadFusion
LF-1958
To ease using HTTP/2 with LuciadFusion, the following improvements have been introduced:
- A new article How to use HTTP/2 with LuciadFusion has been introduced.
- HTTP/2 is now enabled by default in the LuciadFusion Platform configuration.
- In order to enable HTTP/2 with the sample Jetty server shipped with LuciadFusion, we have included the following sample dependencies:
Group ID | Artifact ID ID | Version |
---|---|---|
org.eclipse.jetty.http2 | jetty-http2-common | 12.0.7 |
org.eclipse.jetty.http2 | jetty-http2-hpack | 12.0.7 |
org.eclipse.jetty.http2 | jetty-http2-server | 12.0.7 |
org.eclipse.jetty | jetty-alpn-conscrypt-server | 12.0.7 |
org.eclipse.jetty | jetty-alpn-server | 12.0.7 |
org.conscrypt | conscrypt-openjdk-uber | 2.5.2 |
ImprovementLuciadFusion
GET /api/data/filter
now allows filtering Data
resources by data categories and keywords.
These properties are also listed by the GET /api/data/queryable-properties
endpoint.
More information on how you can use the GET /api/data/filter
endpoint can be found in
the data querying article.
ImprovementLuciadFusion
LF-2495
A LuciadFusion Studio REST API developer can now define custom properties with a limited set of allowed
values for the Long
data type
in addition to the already supported String
type.
As a result of this:
addLongProperty(String, Set)
and
addLongProperty(String, String, Set, boolean)
methods have been added to the class TLfnCustomPropertyDefinitions
.
In addition to the above inclusions to the API, the following
addEnumProperty(String, String, Set, boolean)
and addEnumProperty(String, Set)
methods
of the class TLfnCustomPropertyDefinitions
have been deprecated in favor of new
methods addStringProperty(String, String, Set, boolean)
and
addStringProperty(String, Set)
.
It is recommended to use the newly introduced methods instead of the deprecated ones.
The deprecated methods will subsequently be removed in one of the future product releases.
As a result of this enhancement the LuciadFusion Studio REST API endpoints
GET /api/data/custom-properties
and
GET /api/data/queryable-properties
no longer return
'Enum' as a 'type' in a REST API response. They now return the data type as determined
by the type of value a custom property can take i.e. Long, Double, Boolean, Date,
String
. This change is consistent with the behavior of the
custom properties which already returned the 'type' as their data type of the values.
ImprovementLuciadFusion
LF-1949
ImprovementLuciadFusion
LF-1245, LF-1239, LF-2071
ImprovementLuciadFusion
LCD-9753
TLcdGeoPackageFeatureDatabaseModelEncoder
: encoding data objects with multiple geometry properties
now results in a clear error message, instead of a message indicating a unique constraint violation.
ImprovementLuciadFusion
LCD-9574
ImprovementLuciadFusion
LF-2580
ImprovementAviation Standards
LCD-13371
ImprovementDefense Symbology
LCD-13199
A new style class, TLcdMilitarySymbolStyle
, has been added to the Military Symbology API.
This class can be used to define the symbol style of both APP-6 and MIL-STD-2525 symbols.
The usage is equivalent to the usage of the existing, standard specific style classes (TLcdDefaultAPP6AStyle
and TLcdDefaultMS2525bStyle
).
You can configure a symbol dependent style, by either having your domain objects implement ILcdStyledMilitarySymbol
or by defining a default style on your
painter providers or layers.
The following methods have been added to configure a TLcdMilitarySymbolStyle
on painter providers and layers:
TLcdAPP6AGXYPainterProvider.setDefaultMilitarySymbolStyle
TLcdAPP6AGXYLabelPainterProvider.setDefaultMilitarySymbolStyle
TLspAPP6ALayerBuilder.defaultStyle
TLspAPP6ASymbolStyle.Builder.militarySymbolStyle
TLcdMS2525bGXYLabelProvider.setDefaultMilitarySymbolStyle
TLcdMS2525bGXYLabelPainterProvider.setDefaultMilitarySymbolStyle
TLspMS2525bLayerBuilder.defaultStyle
TLspMS2525bSymbolStyle.Builder.militarySymbolStyle
TLspMilitarySymbologyLayerBuilder.defaultStyle
ImprovementInfrastructure Standards
discoverDataSources
method of TLcdIFCModelDecoder
now returns
a list of TLcdBIMDataSource
objects.
Bug fixLuciadFusion
LCD-13245
TLcdIOUtil#resolve
returned an incorrect result for source names starting with "jpip://".
The method now returns null
.
Bug fixLuciadFusion
LCD-13252
TLcdSLDFeatureTypeStylePainter
now implements ILcdGXYEditorProvider
,
which returns itself as ILcdGXYEditor
to edit objects in a GXY view. This better aligns with
the already implemented painter-related interfaces ILcdGXYPainter
and
ILcdGXYPainterProvider
.
Bug fixLuciadFusion
LCD-13231
TLcdEarthRepositoryModelDecoder
: improved the robustness when interrupting a thread
that was reading a tile repository. This improves compatibility with Java 21.
Bug fixLuciadFusion
LF-2354
startedTime
property on a service was never updated if the service was restarted.
Bug fixLuciadFusion
LF-2513
Bug fixLuciadFusion
LF-2589
Bug fixLuciadFusion
LF-2578
Bug fixLuciadFusion
LF-2573
Bug fixLuciadFusion
LF-2570
Bug fixLuciadFusion
LCD-13386
settings.xml
file was not used when deploying the license to the Maven repository.
Bug fixLuciadFusion
LF-2582
GET api/data/filter
endpoint for wildcard character
^
based equality comparison of String
based custom properties.
Now the query using wildcard ^
based equality comparison will only work when the wildcard
character is placed at the beginning of string to be compared against a custom property.
^
will now be interpreted as a regular character if used anywhere other than the beginning
of a string.
Bug fixLuciadFusion
LF-2575
Bug fixLuciadFusion
LF-2568
Principal
of the authenticated
user was not an instance of UserDetails
.
Bug fixLuciadFusion
LF-2579
SELECT ON SYS.DBA_RECYCLEBIN
privilege.
A warning is shown if this privilege is not granted to the user used by LuciadFusion to connect to the database.
Bug fixLuciadFusion
LCD-12748
TLcdGeoTIFFModelDecoder
for the case of data with photometric
interpretation RGB with additional sample values. The standard cases RGB(A) worked fine.
For the case with additional sample values the ALcdImage
band semantics did not include
information on the red, green, and blue channels. It would be interpreted as a greyscale image by the image painter.
Now the correct band semantics are reported which makes the image painter pick it up and render the file correctly.
Bug fixData Connectivity Manager
LF-2490
Bug fixDatabase Connectors
LCD-4462
TLcdOracleSpatialModelDecoder
now uses the CS_SRS table to determine the ILcdModelReference
of the
decoded ILcdModel
when the ILcdModelReference
can not be determined using a list of pre-defined references.
Upgrade considerationLuciadFusion
We now enable support for vertical datums by default for a number of model decoders. If your services require preprocessing (such as LTS and OGC 3D Tiles) and you encounter issues with vertical datum application, you may need to preprocess the involved data again to ensure correct application of the vertical datum support. Preprocessing again is only necessary if you have other data with vertical datums and observe inconsistencies. Inconsistencies occur when combining the following data:
- Data which is served by an LTS or OGC 3D Tiles service, which has not applied the vertical datum. This usually occurs because the service was created with an older LuciadFusion version (2023.1 or older), which did not enable vertical datum support by default.
- Data which is loaded directly into a client application, is served by a service which does not do preprocessing or is served by a new LTS or OGC 3D Tiles service, which has been created in LuciadFusion 2024.0.
More information about enabling support for vertical datums by default is given in the release note for issue LCD-12921.
Upgrade considerationLuciadFusion
TLcdIOUtil
, TLcdInputStreamFactory
,
and several model decoders.
Because of this, the following invalid data source paths may no longer be recognized:
- The colon ":" is no longer accepted in Windows file names.
- Spaces are no longer accepted in file URI's. They need to be escaped as described in the URI specification.
Upgrade considerationLuciadFusion
Upgrade considerationLuciadFusion
Upgrade considerationLuciadFusion
LCD-12921
The default behavior of a number of model decoders has been changed. We now enable support for vertical datums by default for a number of model decoders. The vertical datum support will cause the appropriate geoid height to be applied to data files of the affected formats, if the data advertises a vertical datum. In previous versions, we ignored the vertical datum advertised by data by default.
Using the geoid will result in the use of more accurate elevation values, at the cost of performance when processing the data.
The following data formats are affected by this change:
- DEM:
TLcdDEMModelDecoder
- DMED/DTED:
TLcdDMEDModelDecoder
,TLcdDTEDModelDecoder
,TLcdDTEDDirectoryModelDecoder
- ETOPO:
TLcdETOPOModelDecoder
- GeoTIFF:
TLcdGeoTIFFModelDecoder
- LAS/LAZ:
TLcdLASModelDecoder
- SwissDHM:
TLcdSwissDHMMatrixModelDecoder
Because the default behavior has changed for these formats, your data may be painted at a different height, which can cause misalignment with your other layers. For example, you may apply the geoid to points in a LAS file, which causes your LAS points to be painted at a different elevation. If you combine this LAS data with an inaccurate terrain layer, there may be overlap between your LAS points and the terrain layer. You should check that your data is still properly aligned with your other layers after upgrading.
The recommended way to fix such alignment issues is to make sure you use an accurate terrain layer and use the same geoid on all your layers with elevation data. You should also verify that all your elevation data advertises the correct vertical datum. Read our article on Detecting and fixing vertical datum issues for more details.
If you have different behavior then before, and you are sure that the old behavior is preferred, you can revert to the old behavior in the following ways:
- Disable geoid support for a specific model decoder, by calling the method
#setSupportGeoidDatums(boolean)
- Disable geoid support for all aforementioned model decoders, by setting the system property
com.luciad.geodesy.geoidSupport.LEGACY
totrue
.
Upgrade considerationLuciadFusion
Since the upgrade to Spring Security version 6, Spring Security blocks all requests for which no authorization rule is defined.
In order to register authorization rules for services in LuciadFusion, a few changes have been made in the LuciadFusion
configuration and the ILfnServiceTypeConfiguration
interface, which makes it possible to plug in custom service types in LuciadFusion
The documentation changes consist of 2 new properties: fusion.security.serviceAuthenticationRequired
and fusion.security.authenticatedEndpoints
fusion.security.serviceAuthenticationRequired
allows you to globally configure if services published in LuciadFusion require authentication or if anonymous access is permitted.fusion.security.authenticatedEndpoints
allows you to override the configuration set byfusion.security.serviceAuthenticationRequired
for certain url patterns. This can, for example, be used if you want to allow anonymous access for all services except services of a certain type (wms, wfs, lts, etc)
Additionally we have deprecated the property fusion.accessControl.authenticatedEndpoints
.
This property used to only have an effect when access control is enabled, it is now replaced by fusion.security.authenticatedEndpoints
, which is also active when access control is disabled.
If you are using fusion.accessControl.authenticatedEndpoints
, this configuration will still be applied, but this property will be removed in a future LuciadFusion release, so we recommend
that you
replace its usage by fusion.accessControl.authenticatedEndpoints
.
We have added the method getEndpointPatterns()
to he interface ILfnServiceTypeConfiguration
.
This method is used to inform the LuciadFusion Security system of which url patterns are handled by the service type implementation.
Please read the following articles for more information:
Upgrade considerationLuciadFusion
Group ID | Artifact ID | Old Version | New Version |
---|---|---|---|
org.springframework.boot | spring-boot | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-autoconfigure | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-jetty | 2.7.8 | 3.2.1 |
org.springframework.boot | spring-boot-starter-json | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-logging | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-web | 2.7.14 | 3.2.1 |
org.springframework | spring-aop | 5.3.29 | 6.1.2 |
org.springframework | spring-beans | 5.3.29 | 6.1.2 |
org.springframework | spring-context | 5.3.29 | 6.1.2 |
org.springframework | spring-core | 5.3.29 | 6.1.2 |
org.springframework | spring-expression | 5.3.29 | 6.1.2 |
org.springframework | spring-jdbc | 5.3.29 | 6.1.2 |
org.springframework | spring-tx | 5.3.29 | 6.1.2 |
org.springframework | spring-web | 5.3.29 | 6.1.2 |
org.springframework | spring-webmvc | 5.3.29 | 6.1.2 |
com.zaxxer | HikariCP | 4.0.3 | 5.0.1 |
org.ow2.asm | asm-commons | 9.4 | 9.6 |
org.ow2.asm | asm-tree | 9.4 | 9.6 |
com.fasterxml.jackson.datatype | jackson-datatype-jdk8 | 2.14.2 | 2.15.3 |
com.fasterxml.jackson.datatype | jackson-datatype-jsr310 | 2.14.2 | 2.15.3 |
com.fasterxml.jackson.module | jackson-module-parameter-names | 2.14.2 | 2.15.3 |
org.apache.tomcat.embed | tomcat-embed-el | 9.0.78 | 10.1.17 |
org.eclipse.jetty | jetty-client | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-http | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-io | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-plus | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-security | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-server | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-util | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-xml | 9.4.50.v20221201 | 12.0.7 |
org.slf4j | jul-to-slf4j | 1.7.36 | 2.0.9 |
org.slf4j | slf4j-api | 1.7.36 | 2.0.9 |
org.apache.logging.log4j | log4j-api | 2.17.2 | 2.21.1 |
org.apache.logging.log4j | log4j-to-slf4j | 2.17.2 | 2.21.1 |
ch.qos.logback | logback-classic | 1.2.12 | 1.4.14 |
ch.qos.logback | logback-core | 1.2.12 | 1.4.14 |
org.yaml | snakeyaml | 2.0 | 2.2 |
jakarta.annotation | jakarta.annotation-api | 1.3.5 | 2.1.1 |
jakarta.websocket | jakarta.websocket-api | 1.1.2 | 2.1.1 |
The following dependencies have been added:
Group ID | Artifact ID | Version |
---|---|---|
org.eclipse.jetty.ee10 | jetty-ee10-annotations | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-plus | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-servlet | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-servlets | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-webapp | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jakarta-client | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jakarta-common | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jakarta-server | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jetty-server | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-servlet | 12.0.7 |
org.eclipse.jetty | jetty-alpn-client | 12.0.7 |
org.eclipse.jetty | jetty-jndi | 12.0.7 |
org.eclipse.jetty | jetty-session | 12.0.7 |
jakarta.websocket | jakarta.websocket-client-api | 2.1.1 |
The following dependencies have been removed:
Group ID | Artifact ID | Version |
---|---|---|
org.eclipse.jetty | jetty-annotations | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-continuation | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-servlet | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-servlets | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-util-ajax | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-webapp | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-api | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-client | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-common | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-server | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-servlet | 9.4.50.v20221201 |
Upgrade considerationLuciadFusion
Group ID | Artifact ID | Old Version | New Version |
---|---|---|---|
org.springframework.boot | spring-boot | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-actuator-autoconfigure | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-actuator | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-autoconfigure | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-configuration-processor | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-actuator | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-freemarker | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-jdbc | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-json | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-logging | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-security | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-validation | 2.7.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-web | 2.1.14 | 3.2.1 |
org.springframework.boot | spring-boot-starter-websocket | 2.7.14 | 3.2.1 |
org.springframework.ldap | spring-ldap-core | 2.4.1 | 3.0.4 |
org.springframework.security | spring-security-config | 5.8.6 | 6.2.1 |
org.springframework.security | spring-security-core | 5.8.6 | 6.2.1 |
org.springframework.security | spring-security-crypto | 5.8.6 | 6.2.1 |
org.springframework.security | spring-security-ldap | 5.8.6 | 6.1.2 |
org.springframework.security | spring-security-oauth2-core | 5.8.6 | 6.1.2 |
org.springframework.security | spring-security-oauth2-resource-server | 5.8.6 | 6.1.2 |
org.springframework.security | spring-security-web | 5.8.6 | 6.2.1 |
org.springframework | spring-aop | 5.3.29 | 6.1.2 |
org.springframework | spring-beans | 5.3.29 | 6.1.2 |
org.springframework | spring-context | 5.3.29 | 6.1.2 |
org.springframework | spring-context-support | 5.3.29 | 6.1.2 |
org.springframework | spring-core | 5.3.29 | 6.1.2 |
org.springframework | spring-expression | 5.3.29 | 6.1.2 |
org.springframework | spring-jdbc | 5.3.29 | 6.1.2 |
org.springframework | spring-messaging | 5.3.29 | 6.1.2 |
org.springframework | spring-tx | 5.3.29 | 6.1.2 |
org.springframework | spring-web | 5.3.29 | 6.1.2 |
org.springframework | spring-webmvc | 5.3.29 | 6.1.2 |
org.springframework | spring-websocket | 5.3.29 | 6.1.2 |
org.webjars | swagger-ui | 4.15.5 | 5.10.3 |
org.apache.tomcat.embed | tomcat-embed-el | 9.0.78 | 10.1.17 |
org.yaml | snakeyaml | 2.0 | 2.2 |
org.hibernate.validator | hibernate-validator | 6.2.5.Final | 8.0.1.Final |
org.apache.logging.log4j | log4j-api | 2.17.2 | 2.21.1 |
org.apache.logging.log4j | log4j-to-slf4j | 2.17.2 | 2.21.1 |
org.jboss.logging | jboss-logging | 3.4.1.Final | 3.4.3.Final |
org.slf4j | jcl-over-slf4j | 1.7.36 | 2.0.9 |
org.slf4j | jul-to-slf4j | 1.7.36 | 2.0.9 |
org.slf4j | log4j-over-slf4j | 1.7.36 | 2.0.9 |
org.slf4j | slf4j-api | 1.7.36 | 2.0.9 |
ch.qos.logback | logback-classic | 1.2.12 | 1.4.14 |
ch.qos.logback | logback-core | 1.2.12 | 1.4.14 |
com.zaxxer | HikariCP | 4.0.3 | 5.0.1 |
io.github.classgraph | classgraph | 4.8.149 | 4.8.108 |
io.micrometer | micrometer-core | 1.9.13 | 1.12.1 |
joda-time | joda-time | 2.8.1 | 2.10.10 |
com.sun.activation | jakarta.activation | 1.2.2 | 2.0.1 |
jakarta.servlet | jakarta.servlet-api | 4.0.4 | 6.0.0 |
jakarta.validation | jakarta.validation-api | 2.0.2 | 3.0.2 |
jakarta.xml.bind | jakarta.xml.bind-api | 2.3.3 | 4.0.0 |
The following dependencies have been added:
Group ID | Artifact ID | Version |
---|---|---|
io.micrometer | micrometer-common | 1.12.1 |
io.micrometer | micrometer-jakarta9 | 1.12.1 |
io.micrometer | micrometer-observation | 1.12.1 |
io.swagger.core.v3 | swagger-annotations-jakarta | 2.2.19 |
io.swagger.core.v3 | swagger-core-jakarta | 2.2.19 |
io.swagger.core.v3 | swagger-models-jakarta | 2.2.19 |
org.springdoc | springdoc-openapi-starter-common | 2.3.0 |
org.springdoc | springdoc-openapi-starter-webmvc-api | 2.3.0 |
org.springdoc | springdoc-openapi-starter-webmvc-ui | 2.3.0 |
jakarta.transaction | jakarta.transaction-api | 6.0.0 |
The following dependencies have been removed:
Group ID | Artifact ID | Version |
---|---|---|
commons-lang | commons-lang | 2.6 |
javax.inject | javax.inject | 1 |
io.swagger.core.v3 | swagger-annotations | 2.2.7 |
io.swagger.core.v3 | swagger-core | 2.2.7 |
io.swagger.core.v3 | swagger-models | 2.2.7 |
org.springdoc | springdoc-openapi-common | 1.6.14 |
org.springdoc | springdoc-openapi-security | 1.6.14 |
org.springdoc | springdoc-openapi-ui | 1.6.14 |
org.springdoc | springdoc-openapi-webmvc-core | 1.6.14 |
org.webjars | webjars-locator-core | 0.52 |
LuciadFusion can be used with a Jetty embedded servlet container. The jetty sample dependencies are used in this situation. The following sample dependencies related to Jetty have changed:
org.springframework.boot | spring-boot-starter-jetty | 2.7.8 | 3.2.1 |
org.ow2.asm | asm-commons | 9.4 | 9.6 |
org.ow2.asm | asm-tree | 9.4 | 9.6 |
org.eclipse.jetty | jetty-client | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-http | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-io | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-plus | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-security | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-server | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-util | 9.4.50.v20221201 | 12.0.7 |
org.eclipse.jetty | jetty-xml | 9.4.50.v20221201 | 12.0.7 |
jakarta.annotation | jakarta.annotation-api | 1.3.5 | 2.1.1 |
jakarta.websocket | jakarta.websocket-api | 1.1.2 | 2.1.1 |
The following sample dependencies related to Jetty have been added:
Group ID | Artifact ID | Version |
---|---|---|
org.eclipse.jetty.ee10 | jetty-ee10-annotations | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-plus | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-servlet | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-servlets | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-webapp | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jakarta-client | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jakarta-common | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jakarta-server | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-jetty-server | 12.0.7 |
org.eclipse.jetty.ee10 | jetty-ee10-websocket-servlet | 12.0.7 |
org.eclipse.jetty | jetty-alpn-client | 12.0.7 |
org.eclipse.jetty | jetty-jndi | 12.0.7 |
org.eclipse.jetty | jetty-session | 12.0.7 |
jakarta.websocket | jakarta.websocket-client-api | 2.1.1 |
The following sample dependencies related to Jetty have been removed:
Group ID | Artifact ID | Version |
---|---|---|
org.eclipse.jetty | jetty-annotations | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-continuation | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-servlet | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-servlets | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-util-ajax | 9.4.50.v20221201 |
org.eclipse.jetty | jetty-webapp | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-api | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-client | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-common | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-server | 9.4.50.v20221201 |
org.eclipse.jetty.websocket | websocket-servlet | 9.4.50.v20221201 |
Upgrade considerationLuciadFusion
LCD-13176
TLcdGXYImagePainter
, TLcdRasterPainter
, TLcdMultilevelRasterPainter
,
TLcdEarthGXYRasterPainter
, TLcdGXYTiledWMSProxyPainter
and TLcdWMSProxyGXYPainter
now apply brightness and contrast to raster layers with the same algorithm as Lightspeed's TLspRasterStyle
.
This used to be different but has now been aligned.
With the new behavior, the [0, 2] brightness value range covers the entire color brightness range (black to white).
The contrast setting offers a modifier on top for further tweaking.
Upgrade considerationLuciadFusion
POST /api/services/{id}/keywords
now accepts a set instead of a list of keywords.
Any duplicate keywords that are added to the service are ignored.
Upgrade considerationLuciadFusion
The LuciadLightspeed and LuciadFusion APIs now use the Jakarta EE 10 API and Jakarta Servlet 6.0 API, where in previous releases
the Java EE 7 API and Java Servlet 3.1 API were used.
There are a few breaking changes in the new Jakarta Servlet 6.0 API, the main one being a rename of the javax.servlet
package to jakarta.servlet
.
Any LuciadLightspeed or LuciadFusion API that use classes from this package thus contain a corresponding breaking change.
The affected classes are mainly the classes implementing the OGC server standards (WM(T)S, WFS, etc).
Any compilation errors you encounter related to this change can typically be resolved by performing a find and replace operation.
Refer to the documentation on hardware and software requirements in the prerequisites section for more information.
Upgrade considerationLuciadFusion
isoMetadataXmlContent
that is part of the Service resource of the
LuciadFusion Studio REST API
was marked for deprecation in release 2023.0 and has now been removed. Instead, use LuciadFusion's Studio
Catalog Service to get
the ISO-19115 metadata of a service.
Upgrade considerationLuciadFusion
Upgrade considerationLuciadFusion
LF-2408
Group ID | Artifact ID | Old Version | New Version |
---|---|---|---|
org.apache.commons | commons-configuration2 | 2.9.0.lcd-11 | 2.9.0 |
org.orbisgis | cts | 1.4.0 | 1.7.0 |
org.geolatte | geolatte-geom | 0.13 | 1.9.1 |
com.h2database | h2 | 1.4.195 | 2.1.214 |
org.orbisgis | h2gis-api | 1.3.1 | 2.2.0 |
org.orbisgis | h2gis-utilities | 1.3.1 | 2.2.0 |
org.orbisgis | h2gis | 1.3.1 | 2.2.0 |
org.liquibase | liquibase-core | 3.6.3 | 4.8.0 |
The following dependencies have been added:
Group ID | Artifact ID | Version |
---|---|---|
org.eclipse.jdt | ecj | 3.26.0 |
org.orbisgis | poly2tri | 0.4.0 |
The following dependencies have been removed:
Group ID | Artifact ID | Version |
---|---|---|
org.codehaus.mojo | animal-sniffer-annotations | 1.14 |
com.infradna.tool | bridge-method-annotation | 1.13 |
org.javassist | javassist | 3.18.2-GA |
org.reflections | reflections | 0.9.9 |
org.orbisgis | poly2tri-core | 0.1.2 |
com.vividsolutions | jts-io | 1.14.0 |
com.googlecode.json-simple | json-simple | 1.1 |
jakarta.activation | jakarta.activation-api | 1.2.2 |
Upgrade considerationLuciadFusion
LCD-9539
Group ID | Artifact ID | Old Version | New Version |
---|---|---|---|
com.fasterxml.jackson.core | jackson-annotations | 2.14.2 | 2.15.3 |
com.fasterxml.jackson.core | jackson-core | 2.14.2 | 2.15.3 |
com.fasterxml.jackson.core | jackson-databind | 2.14.2 | 2.15.3 |
com.google.protobuf | protobuf-java | 3.19.4 | 3.25.3 |
com.thetransactioncompany | cors-filter | 1.3.2 | 3.0 |
com.thetransactioncompany | java-property-utils | 1.6 | 1.17 |
jakarta.servlet | jakarta.servlet-api | 4.0.4 | 6.0.0 |
joda-time | joda-time | 2.8.1 | 2.10.10 |
org.apache.commons | commons-compress | 1.22 | 1.26 |
org.apache | commons-io | 2.6 | 2.15.1 |
org.apache.commons | commons-lang3 | 3.12.0 | 3.14.0 |
org.apache.xmlgraphics | batik-xml | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-util | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-transcoder | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-swing | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-svggen | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-svg-dom | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-script | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-shared-resources | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-parser | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-i18n | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-gvt | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-gui-util | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-ext | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-dom | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-css | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-constants | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-codec | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-bridge | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-awt-util | 1.16 | 1.17 |
org.apache.xmlgraphics | batik-anim | 1.16 | 1.17 |
org.apache.xmlgraphics | xmlgraphics-commons | 2.7 | 2.9 |
org.slf4j | slf4j-api | 1.7.36 | 2.0.9 |
org.postgresql | postgresql | 42.5.4 | 42.7.3 |
org.checkerframework | checker-qual | 3.5.0 | 3.42.0 |
The following dependencies have been added:
Group ID | Artifact ID | Version |
---|---|---|
org.locationtech | jts-core | 1.19.0 |
The following dependencies have been removed:
Group ID | Artifact ID | Version |
---|---|---|
com.vividsolutions | jts-core | 1.14.0 |
Upgrade considerationLuciadFusion
LF-2408
H2
library has been updated to version 2.1.214.
The H2GIS
library has been updated to version 2.2.0.
Upgrade considerationLuciadFusion
LCD-9539
QueryDSL
library has been updated to version 5.0.0. Please note that these libraries have been modified from the original QueryDSL
libraries to include additional fixes.
Upgrade considerationLuciadFusion
LCD-9539
JTS
library has been updated to version 1.19.0. Please note that this library is not backward compatible.
All classes have moved from com.vividsolutions.*
to org.locationtech.*
.
Upgrade considerationLuciadFusion
LCD-12881
Upgrade considerationLuciadFusion
Upgrade considerationLuciadFusion
Upgrade considerationLuciadFusion
Upgrade considerationLuciadFusion
LCD-10042
TLcdLRDBModelEncoder#SUPPORTED_COVERAGE_TYPES
is removed from the API.
Upgrade considerationAdvanced Raster Services
LF-2542
com.erdas.gen3.ecwjp2:ecw-native
has been upgraded to version 6.1.0.1084.
Upgrade considerationAdvanced Raster Services
The class TLcdECWConfiguration
is now removed from the API to keep the API clean and
simple. If you were using this class, it is now required to use TLcdECWModelDecoder#getMaxCacheSize
and
TLcdECWModelDecoder#setMaxCacheSize
instead of similar methods exposed by
TLcdECWConfiguration
.
The class TLcdECWImageDecoder
is now removed from the API due to its limited capability
in supporting decoding of multi band and multi bit depth ECW data files. If you were using this class, it is now
required to use the enhanced TLcdECWModelDecoder
, which fully supports decoding
multi band and multi bit depth ECW data files. This updated decoder provides a more robust and versatile solution
for handling ECW data.
The previous
libecw-6.1.*.jar
libraries are now replaced by
ecw-6.1.0-native*.jar
containing the native libraries provided as part of ERDAS ECW JP2 SDK 6.1.0. This change also adds the
ecw-6.1.0.jar
library which contains the JNI bindings to access the
functionalities exposed by the packaged native libraries.
Upgrade considerationAdvanced Raster Services
TLcdGDALModelDecoder#setUnlockAllFormats(boolean)
and the system property com.luciad.format.gdal.unlockAllFormats
have been replaced
with the method TLcdGDALModelDecoder#setAllowUnverifiedFormats(boolean)
and the system property com.luciad.format.gdal.allowUnverifiedFormats
.
The old method would only unlock a specific set of whitelisted formats, whereas the new method will unlock any and all formats
for which a GDAL driver is found.
Upgrade considerationAdvanced Raster Services
TLcdGDALModelDecoder
can no longer decode Arc/Info Export E00 GRID files.
The GDAL library no longer offers supports for this format.
The jpeg, png16 and proj libraries are no longer loaded separately, they are now packaged with the gdal library.
Upgrade considerationDatabase Connectors
LCD-6130, LCD-8872
TLcdDataModel
of the TLcdDatabaseModelDescriptor
now maps columns of type CLOB
and TIMESTAMP
to the correct types, TLcdDatabaseDataTypes#ClobType
and TLcdDatabaseDataTypes#TimestampType
.
Data stored in a column of type TIMESTAMP
is now converted into an object of type java.sql.Timestamp
instead of a oracle.sql.TIMESTAMP
when loading data from an Oracle database.
Upgrade considerationDatabase Connectors
LCD-10712
TLcdMSSQLModelDecoder
and TLcdMSSQLModelEncoder
.
It's advisable to upgrade to a newer version of SQL Server if you are still using version 2008 or 2012.
Upgrade considerationDatabase Connectors
LCD-13196
TLcdOracleSpatialModelDecoder
, TLcdOracleSpatialModelEncoder
and TLcdOracleGeoRasterModelDecoder
.
These versions are no longer supported by Oracle, see the Oracle Lifetime Support Policy document.
It's advisable to upgrade to a newer version of Oracle database if you are still using any of these versions.
Upgrade considerationDatabase Connectors
LCD-13197
TLcdPostGISModelDecoder
and TLcdPostGISModelEncoder
.
These versions are no longer supported by the PostgreSQL Global Development Group, see the PostgreSQL Versioning Policy page.
It's advisable to upgrade to a newer version of PostgreSQL if you are still using any of these versions.
Upgrade considerationDefense Symbology
LCD-13140
The geometry type of a number of APP-6A/B Minefield symbols has been changed. These symbols were modeled as polygons, which required the symbol to have at least 3 anchor points to define the symbol's shape. To better align these symbols with the NVG geometry bindings specification, the geometry has now been changed to a point, which requires only a single anchor point to define the symbol's shape. The following symbols are affected by this change:
- 2.X.2.2.1.6.1 "Planned Minefield"
- 2.X.2.2.1.6.2 "Completed Minefield"
- 2.X.2.2.1.6.5 "Antitank (AT) Minefield"
- 2.X.2.2.1.6.6 "Scatterable Mines"
- 2.X.2.2.1.6.7 "Antipersonnel (AP) Minefield Reinforced With Scatterable With Self-Destruct Date-Time-Group"
- 2.X.2.2.1.6.8 "Scatterable Minefield (Antitank Mines) With Self-Destruct Date-Time-Group"
- 2.X.2.2.1.7 "Executed Volcano Minefield"
Upgrade considerationDefense Symbology
LCD-13138
Upgrade considerationDefense Symbology
LCD-13175, LCD-13300
The interfaces ILcdAPP6AStyle
and ILcdMS2525bStyle
,
and their implementations TLcdDefaultAPP6AStyle
and TLcdDefaultMS2525bStyle
have been deprecated.
If you need to create a symbol style, you should use the newly introduced class TLcdMilitarySymbolStyle
.
Upgrade considerationInfrastructure Standards
IFCPath
property of the elements in the features model returned by the TLcdIFCModelDecoder
has been deprecated. We recommended using the new AncestorPath
property instead which has
same value. The IFCPath
property is still included to maintain backwards compatibility with clients that
depend on it, but it will be removed in a future release.
Upgrade considerationInfrastructure Standards
TLcdRevitModelDecoder
.
Upgrade considerationInfrastructure Standards
The discoverDataSources
method of the TLcdBinzModelDecoder
now returns
a list containing two TLcdBIMDataSource
objects: one for the geometry model, and one for the
features model. Previously, it returned a list containing only a TLcdDataSource
for the geometry
model.
The following snippet can be used to get the geometry model for both the new and the previous version of this
discoverDataSources
method.
TLcdBinzModelDecoder decoder = new TLcdBinzModelDecoder();
List<? extends ILcdDataSource> dataSources = decoder.discoverDataSources("path/to/dataset.binz");
ILcdModel geometryModel = decoder.decodeSource(dataSources.get(0));
Upgrade considerationInfrastructure Standards
TLcdRevitModelDecoder
.
Upgrade considerationInfrastructure Standards
The following deprecated DGN classes have been removed from the LuciadLightspeed API:
- TLcdDGNMicroStationServlet
- TLcdDGNMicroStationModelDecoder
- TLcdDGNMicroStationDisplayInfo
- TLcdDGNMicroStationLevelSymbology
Any usage of these classes should be replaced by the TLcdDGNModelDecoder
.