You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Markdown
		
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Markdown
		
	
---
 | 
						|
layout: post
 | 
						|
title: "Subsonic, FreeBSD 10, and UTF-8"
 | 
						|
date: 2015-07-30 15:00:00 +0200
 | 
						|
comments: true
 | 
						|
categories: 
 | 
						|
---
 | 
						|
 | 
						|
In the context of
 | 
						|
[upgrading to FreeBSD 10]({% post_url 2015-02-18-upgrading-to-freebsd-10-1-release %}),
 | 
						|
I reinstalled the [Subsonic media server](http://www.subsonic.org/) from ports.
 | 
						|
 | 
						|
Servlet container
 | 
						|
=================
 | 
						|
 | 
						|
It turns out that using Jetty as the underlying servlet container would not work:
 | 
						|
I would get an obscure Java exception during various operations:
 | 
						|
 | 
						|
```
 | 
						|
Message	/WEB-INF/jsp/settingsHeader.jsp(12,0) PWC6340: According to the TLD, rtexprvalue is true, and deferred-value is specified for the attribute items of the tag handler org.apache.taglibs.standard.tag.rt.core.ForTokensTag, but the argument for the setter method is not a java.lang.Object
 | 
						|
```
 | 
						|
 | 
						|
Switching to Tomcat 8 worked.
 | 
						|
 | 
						|
Changing filesystem charset to UTF-8
 | 
						|
====================================
 | 
						|
 | 
						|
I had been using ISO-8859-15 filenames for ever. As part of the OS ugprade,
 | 
						|
I decided it was more than time to switch the whole system to UTF-8. (One
 | 
						|
specific issue that prompted this was the fact that GDM now seems to not
 | 
						|
support ISO 8859-15 GECOS user names anymore).
 | 
						|
 | 
						|
In order to have Subsonic properly handle file and directory names encoded
 | 
						|
in UTF-8, I had to set LANG for it:
 | 
						|
 | 
						|
```plain /etc/rc.conf.d/tomcat8
 | 
						|
export LANG=fr_FR.UTF-8
 | 
						|
```
 | 
						|
 | 
						|
*and* to re-create the database from scratch (remove everything from
 | 
						|
`/var/subsonic/db/` *except* `subsonic.script`).
 | 
						|
 |